摘要:
手动动画 timeOffset一个很有用的功能在于你可以它可以让你手动控制动画进程,通过设置speed为0,可以禁用动画的自动播放,然后来使用timeOffset来来回显示动画序列。这可以使得运用手势来手动控制动画变得很简单。 举个简单的例子:还是之前关门的动画,修改代码来用手势控制动画。我们给视图 阅读全文
posted @ 2017-10-04 23:05
Harely
阅读(430)
评论(0)
推荐(0)
摘要:
#CAMediaTiming`协议 CAMediaTiming协议定义了在一段动画内用来控制逝去时间的属性的集合,CALayer和CAAnimation都实现了这个协议,所以时间可以被任意基于一个图层或者一段动画的类控制。 持续和重复 我们在第八章“显式动画”中简单提到过duration(CAMed 阅读全文
posted @ 2017-10-04 23:02
Harely
阅读(391)
评论(0)
推荐(0)
摘要:
在动画过程中取消动画 之前提到过,你可以用-addAnimation:forKey:方法中的key参数来在添加动画之后检索一个动画,使用如下方法: 但并不支持在动画运行过程中修改动画,所以这个方法主要用来检测动画的属性,或者判断它是否被添加到当前图层中。 为了终止一个指定的动画,你可以用如下方法把它 阅读全文
posted @ 2017-10-04 22:29
Harely
阅读(1093)
评论(0)
推荐(0)
摘要:
过渡 有时候对于iOS应用程序来说,希望能通过属性动画来对比较难做动画的布局进行一些改变。比如交换一段文本和图片,或者用一段网格视图来替换,等等。属性动画只对图层的可动画属性起作用,所以如果要改变一个不能动画的属性(比如图片),或者从层级关系中添加或者移除图层,属性动画将不起作用。 于是就有了过渡的 阅读全文
posted @ 2017-10-04 22:23
Harely
阅读(507)
评论(0)
推荐(0)
摘要:
动画组 CABasicAnimation和CAKeyframeAnimation仅仅作用于单独的属性,而CAAnimationGroup可以把这些动画组合在一起。CAAnimationGroup是另一个继承于CAAnimation的子类,它添加了一个animations数组的属性,用来组合别的动画。 阅读全文
posted @ 2017-10-04 16:19
Harely
阅读(238)
评论(0)
推荐(0)
摘要:
属性动画 CAAnimationDelegate在任何头文件中都找不到,但是可以在CAAnimation头文件或者苹果开发者文档中找到相关函数。在这个例子中,我们用-animationDidStop:finished:方法在动画结束之后来更新图层的backgroundColor。 当更新属性的时候, 阅读全文
posted @ 2017-10-04 16:14
Harely
阅读(636)
评论(0)
推荐(0)
摘要:
呈现与模型 CALayer的属性行为其实很不正常,因为改变一个图层的属性并没有立刻生效,而是通过一段时间渐变更新。这是怎么做到的呢? 当你改变一个图层的属性,属性值的确是立刻更新的(如果你读取它的数据,你会发现它的值在你设置它的那一刻就已经生效了),但是屏幕上并没有马上发生改变。这是因为你设置的属性 阅读全文
posted @ 2017-10-04 13:40
Harely
阅读(479)
评论(0)
推荐(0)
摘要:
图层行为 现在来做个实验,试着直接对UIView关联的图层做动画而不是一个单独的图层。清单7.4是对清单7.2代码的一点修改,移除了colorLayer,并且直接设置layerView关联图层的背景色。 清单7.4 直接设置图层的属性 1 @interface ViewController () 2 阅读全文
posted @ 2017-10-04 09:47
Harely
阅读(494)
评论(0)
推荐(0)