摘要: “类族”(class cluster)是一种很有用的模式(pattern),可以隐藏“抽象基类”(abstract base class)背后的实现细节。Objective-C的系统框架中普遍使用此模式,比如iOS的用户界面框架(user interface framework)UIKit中就有一个 阅读全文
posted @ 2016-04-19 22:25 Gabriel_Lee 阅读(975) 评论(0) 推荐(0) 编辑
摘要: NSObject协议中有两个用于判断等同性的关键方法: NSObject类对这两个方法的默认实现是:当且仅当其“指针值”(pointer value)完全相等时,这两个对象才相等。如果“isEqual:”方法判定两个对象相等,那么其hash方法也必须返回同一个值。但是,如果两个对象的hash方法返回 阅读全文
posted @ 2016-04-18 22:12 Gabriel_Lee 阅读(2009) 评论(0) 推荐(0) 编辑
摘要: 1、安装Eclipse:http://www.eclipse.org/downloads/,网页会自动检测适用的版本(Mac OS x64),下载“Eclipse IDE for java Developers”并安装; 2、尝试运行Eclipse,若提示“您需要安装旧 Java SE 6 运行环境 阅读全文
posted @ 2016-04-18 17:42 Gabriel_Lee 阅读(2372) 评论(0) 推荐(0) 编辑
摘要: 因为除了iPhone 6+以外,其他所有iPhone的DPI是一致的,都是326,用@2x的素材。但是6+的实际DPI是401,理论上苹果应该用401/326 * @2x=@2.46x的素材,但是这个奇葩的比例对开发者而言很难切图,所以苹果为方便开发者用的是@3x的素材,然后再缩放到@2.46x上, 阅读全文
posted @ 2016-04-14 14:27 Gabriel_Lee 阅读(4004) 评论(0) 推荐(0) 编辑
摘要: 近期苹果公司iOS 9系统策略更新,限制了http协议的访问,此外应用需要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其他应用是否安装。 受此影响,当你的应用在iOS 9中需要使用 QQ/QQ空间/支付宝/微信SDK 的相关能力(分享、收藏、支付、登录等)时, 阅读全文
posted @ 2016-04-07 11:35 Gabriel_Lee 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 1.拨打苹果针对中国区开发者的咨询服务热线:4006 701 855; 2.简单向对方(中文不太标准,但听懂没问题)说明意图后,会要求提供: (1)之前申请IDP时purchase form上的person ID,Enrollment ID; (2)开发者账号; 3.对方会直接帮忙升级账户,届时会需 阅读全文
posted @ 2016-04-05 12:07 Gabriel_Lee 阅读(555) 评论(0) 推荐(0) 编辑
摘要: 苹果对开发者主要分为3类:个人、组织(公司、企业)、教育机构。即: 1、个人(Individual) 2、组织(Organizations) 组织类又分为2个小类: (1)公司(Company) (2)企业(Enterprise) 3、教育机构(Educational Institutions) 更 阅读全文
posted @ 2016-04-05 11:50 Gabriel_Lee 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 1、由于不经过Objective-C的“方法派发”(method dispatch)步骤,所以直接访问实例变量的速度会比较快。在这种情况下,编译器所生成的代码会直接访问保存对象实例的那块内存; 2、直接访问实例变量时,不会调用其“设置方法”,这就绕过了为设置相关属性所定义的“内存管理语义”; 3、如 阅读全文
posted @ 2016-03-31 23:19 Gabriel_Lee 阅读(277) 评论(0) 推荐(0) 编辑
摘要: assign:用于“纯量类型”(如CGFloat 或 NSInteger等); strong:用于“对象类型”,定义了一种“拥有关系”(owning relationship),为这种属性设置新值时,设置方法会先保留新值,并释放旧值,然后再将新值设置上去; weak:用于“对象类型”,定义了一种“非 阅读全文
posted @ 2016-03-17 23:14 Gabriel_Lee 阅读(156) 评论(0) 推荐(0) 编辑
摘要: Declaring a property atomic makes compiler generate additional code that prevents concurrent access to the property. This additional code locks a sema 阅读全文
posted @ 2016-03-17 22:51 Gabriel_Lee 阅读(138) 评论(0) 推荐(0) 编辑