摘要: 目前在 iOS 和 OS X 中有两套先进的同步 API 可供我们使用:NSOperation 和 GCD 。其中 GCD 是基于 C 的底层的 API ,而 NSOperation 则是 GCD 实现的 Objective-C API。1. 什么时候使用NSOperationQueue而不是GCD... 阅读全文
posted @ 2015-10-21 08:34 学计算机的那个 阅读(146) 评论(0) 推荐(0)
摘要: 1 @interface HMMusicTool : NSObject 2 + (instancetype)sharedMusicTool; 3 @end 4 5 @implementation HMMusicTool 6 static id _instance; 7 8 /** 9 * alloc方法内部会调用这个方法 10 */ 11 + (id)allocWit... 阅读全文
posted @ 2015-10-20 23:21 学计算机的那个 阅读(131) 评论(0) 推荐(0)
摘要: Bird * aBird = [[Bird alloc] init]; [aBird fly]; 中对 fly 的调用,编译器通过插入一些代码,将之转换为对方法具体实现 IMP 的调用,这个 IMP 是通过 在 Bird 的类结构中的方法链表中查找名称为 fly 的 选标 SEL 对应的具体方法找到 阅读全文
posted @ 2015-10-19 22:28 学计算机的那个 阅读(402) 评论(0) 推荐(1)
摘要: 要说清楚消息这个话题,我们必须先来了解三个概念 Class, SEL, IMP,它们在 objc/objc.h 中定义: typedef struct objc_class *Class; typedef struct objc_object { Class isa; } *id; typedef 阅读全文
posted @ 2015-10-19 16:40 学计算机的那个 阅读(279) 评论(0) 推荐(0)
摘要: (一)类的本质类对象(class object)与实例对象(instance object)类本身也是一个对象,是class类型的对象,简称“类对象”。在/usr/include/objc/objc.h 和 runtime.h 中找到对 class 与 object 的定义:Class 是一个 ob... 阅读全文
posted @ 2015-10-19 14:27 学计算机的那个 阅读(288) 评论(0) 推荐(0)
摘要: 英文原文:Understanding Automatic Reference Counting in Objective-C自动引用计数(Automatic Reference Counting, ARC)把压在程序员们肩头的管理内存的重担卸除了不少,更不用说让跟踪内存泄漏那样的烦心事也少了很多。不... 阅读全文
posted @ 2015-10-19 09:42 学计算机的那个 阅读(198) 评论(0) 推荐(0)
摘要: 1.范围任何继承了NSObject的对象,对基本数据类型无效。2.原理每个对象内部都保存了一个与之相关联的整数,称为引用计数器。当使用alloc、new、copy、mutableCopy创建一个对象的时,对象的引用计数器设置为1。给对象发送一条retain消息,可以使引用计数器+1。给对象发送一条r... 阅读全文
posted @ 2015-10-19 09:22 学计算机的那个 阅读(191) 评论(0) 推荐(0)
摘要: 概述简介CABasicAnimation是抽象类CAPropertyAnimation的子类,可以直接使用CABasicAnimation又称基本动画,从fromValue到toValue按照指定的动画属性执行动画注意事项一个动画对象可以同时添加到多个图层上对动画的配置必须放在动画添加到图层之前,否... 阅读全文
posted @ 2015-10-16 16:13 学计算机的那个 阅读(130) 评论(0) 推荐(0)
摘要: 简介CAKeyframeAnimation又称关键帧动画 CAKeyframeAnimation是抽象类CAPropertyAnimation的子类,可以直接使用 通过values与path两个属性指定动画属性注意事项若指定了path属性,则values属性将被忽略 CABasicAnimation... 阅读全文
posted @ 2015-10-16 15:49 学计算机的那个 阅读(197) 评论(0) 推荐(0)
摘要: • 简介◦ 核心动画提供了一组非常强大的动画API,通过该组API可以高效的实现绝大部分绚丽的动画效果注意事项◦ 核心动画的操作在子线程中执行,不会阻塞主线程◦ 核心动画直接作用与CALayer对象上,不是UIView对象上核心动画与UIView动画的区别◦ 核心动画不会改变控件的f... 阅读全文
posted @ 2015-10-16 09:25 学计算机的那个 阅读(127) 评论(0) 推荐(0)