摘要: 高效绘图不必要的效率考虑往往是性能问题的万恶之源。 ——William Allan Wulf在第12章『速度的曲率』我们学习如何用Instruments来诊断Core Animation性能问题。在构建一个iOS app的时候会遇到很多潜在的性能陷阱,但是在本章我们将着眼于有关绘制的性能问题。软件绘... 阅读全文
posted @ 2015-03-05 16:30 OneByte 阅读(527) 评论(0) 推荐(0) 编辑
摘要: 基于定时器的动画我可以指导你,但是你必须按照我说的做。 -- 骇客帝国在第10章“缓冲”中,我们研究了CAMediaTimingFunction,它是一个通过控制动画缓冲来模拟物理效果例如加速或者减速来增强现实感的东西,那么如果想更加真实地模拟物理交互或者实时根据用户输入修改动画改怎么办呢?在这一章... 阅读全文
posted @ 2015-03-05 16:28 OneByte 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 图层时间时间和空间最大的区别在于,时间不能被复用 -- 弗斯特梅里克在上面两章中,我们探讨了可以用CAAnimation和它的子类实现的多种图层动画。动画的发生是需要持续一段时间的,所以计时对整个概念来说至关重要。在这一章中,我们来看看CAMediaTiming,看看Core Animation是如... 阅读全文
posted @ 2015-03-05 16:27 OneByte 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 隐式动画按照我的意思去做,而不是我说的。 -- 埃德娜,辛普森我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情。但是动画师Core Animation库一个非常显著的特性。这一章我们来看看它是怎么做到的。具体来说,我们先来讨论框架自动完成的隐式动画(除非你明确禁用了这个... 阅读全文
posted @ 2015-03-05 16:26 OneByte 阅读(586) 评论(0) 推荐(0) 编辑
摘要: 到目前为止,我们已经探讨过CALayer类了,同时我们也了解到了一些非常有用的绘图和动画功能。但是Core Animation图层不仅仅能作用于图片和颜色而已。本章就会学习其他的一些图层类,进一步扩展使用Core Animation绘图的能力。CAShapeLayer在第四章『视觉效果』我们学习到了... 阅读全文
posted @ 2015-03-05 16:25 OneByte 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 四)视觉效果嗯,园和椭圆还不错,但如果是带圆角的矩形呢?我们现在能做到那样了么?史蒂芬·乔布斯我们在第三章『图层几何学』中讨论了图层的frame,第二章『寄宿图』则讨论了图层的寄宿图。但是图层不仅仅可以是图片或是颜色的容器;还有一系列内建的特性使得创造美丽优雅的令人深刻的界面元素成为可能。在这一章,... 阅读全文
posted @ 2015-03-05 16:23 OneByte 阅读(327) 评论(0) 推荐(0) 编辑
摘要: (一)图层的树状结构巨妖有图层,洋葱也有图层,你有吗?我们都有图层 -- 史莱克Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Layer Kit这么一个不怎么和动画有关的名字演变而来,所以做动画这只是Core Animation特性的冰山一... 阅读全文
posted @ 2015-03-05 16:21 OneByte 阅读(267) 评论(1) 推荐(0) 编辑
摘要: //mySuperLayer父图层 CFTimeInterval pausedTime = [self.mySuperLayer timeOffset]; if (pausedTime > 0)//在暂停后才能使用 { self.mySuperLayer.speed = 1.0; self.mySuperLayer.timeOffset = 0.0; self.mySuperLayer.beginTime = 0.0; CFTimeInterval timeSincePause = [self.mySuperLayer convertTime:CACurrentMediaTime() fromLayer:nil] - pausedTime; self.mySuperLayer.beginTime = timeSincePause; } 阅读全文
posted @ 2015-03-05 15:55 OneByte 阅读(1544) 评论(0) 推荐(1) 编辑