上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页
摘要: 线程间通讯:把一个线程中计算的结果传递到另一个线程中使用。 示例场景:子线程下载网络图片,回主线程更新UI。 NSThread示例代码: 关键代码: GCD示例代码: NSOperation示例代码: 阅读全文
posted @ 2017-01-09 17:04 小课桌 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 线程的生命周期(状态): 3 1、新建状态:创建了新线程(alloc init) 4 2、就绪状态:线程对象添加到“可调度线程池”,等待被CPU调度执行(thread star) 5 3、运行状态:正在被CPU调度执行(执行一半CPU去执行别的线程,将进入就绪状态) 6 4、阻塞状态:休眠或等待同步锁(休眠时间... 阅读全文
posted @ 2017-01-09 12:22 小课桌 阅读(432) 评论(0) 推荐(0) 编辑
摘要: 1 // CACurrentMediaTime:获取绝对时间:从新世纪到现在的绝对时间,常用来计算耗时操作的时间差(结束时间 - 开始时间) 2 double start = CACurrentMediaTime(); 3 double end = CACurrentMediaTime(); 4 5 double duration = end ... 阅读全文
posted @ 2017-01-09 12:06 小课桌 阅读(327) 评论(0) 推荐(0) 编辑
摘要: NSThread创建子线程并执行的三种方式 1、通过NSThread的类方法: .1>不能拿到线程对象 .2>系统自动启动线程 2、通过NSObject (NSThreadPerformAdditions)分类方法 .1>不能拿到线程对象 .2>系统自动启动线程 3、通过构造方法创建子线程对象,al 阅读全文
posted @ 2017-01-09 11:02 小课桌 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 关键帧动画动画设为keyframe.repeatCount = CGFLOAT_MAX;后,每次结束之后都有短暂停顿,怎么解决? 其实很简单,设一个属性即可: // 计算模式 -> 强制运动,匀速进行,不管路径有多远!否则一次动画结束会有短暂停顿 keyframe.calculationMode = 阅读全文
posted @ 2017-01-08 10:46 小课桌 阅读(1195) 评论(0) 推荐(0) 编辑
摘要: 基本动画CABasicAnimation 结束之后,默认闪回初始状态,那怎么解决呢? position需要设备两个属性: 设置之后,不会再闪回去,但其实控件的位置并未改变,还在原来的位置,只是“显示层”挪到了新位置。 可以通过动画的代理方法来实现: 实现代理方法: 如果是transform.scal 阅读全文
posted @ 2017-01-07 20:17 小课桌 阅读(4875) 评论(0) 推荐(0) 编辑
摘要: UICollectionViewFlowLayout里面: 贴出具体代码,注意方法二,要和一个带bool返回值的方法一块用: 协议方法 UICollectionViewDelegateFlowLayout: 阅读全文
posted @ 2017-01-07 07:43 小课桌 阅读(3198) 评论(0) 推荐(0) 编辑
摘要: 1 CATransform3D transform = CATransform3DIdentity; 2 3 // 修改transform的m34达到透视效果 4 // - 1.0 / (500 ~ 1000 效果最好!) 5 // 注意:一定要放在3D前面,顺序不能换,分母越小效果越明显 6 transform.m34 = -1.0... 阅读全文
posted @ 2017-01-06 16:12 小课桌 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 非RootLayer都有隐式动画,默认0.25秒。 阅读全文
posted @ 2017-01-06 16:01 小课桌 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 先来与View比较一下 View:transform -> CGAffineTransformRotate... layer:transform -> CATransform3DRotate... 有三维的效果,3D即3个坐标轴 x,y,z轴 阅读全文
posted @ 2017-01-06 15:53 小课桌 阅读(1537) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页