美文网首页
层动画Layer Animations

层动画Layer Animations

作者: 小橘子成长记 | 来源:发表于2018-08-08 11:39 被阅读4次

    前几篇主要是了解视图动画View Animations,现在可以了解一下核心动画Core Animation的api了。
    你将了解动画层而不是视图,以及如何使用特殊的层。

    Views vs. layers

    层是一个简单的模型类,它公开许多属性来表示一些基于图像的内容。每个UIView都有一个层作为支持,所以你可以把层想象成内容背后的底层。

    由于以下原因,层与视图(相对于动画)不同:
    •层是模型对象——它公开数据属性,不实现逻辑。它没有复杂的自动布局依赖项,也不处理用户交互。
    •它有预先定义的可见特性——这些特性是一些影响内容在屏幕上呈现的数据属性,比如边框线、边框颜色、位置和阴影。
    •最后,Core Animation优化了层内容的缓存,并直接在GPU上快速绘图。

    并排比较视图和层:

    Views
    •复杂的视图层次结构布局、自动布局等。
    •用户交互。
    •通常有自定义的逻辑或自定义的绘图代码,在CPU的主线程上执行。
    •非常灵活、强大,有很多子类。

    Layers
    •更简单的层次结构,更快的解决布局,更快的绘制。
    •没有响应链开销。
    •默认情况下没有自定义逻辑。直接画在GPU上。
    •不太灵活,子类更少。

    如果你需要在视图和层之间进行选择,我的建议是:选择视图动画;当你需要更多的性能或灵活性的时候再切换到层动画。

    概述

    • Chapter 8, Getting Started with Layer Animations 你将从最简单的图层动画开始,还将了解调试动画出错的情况。
    • Chapter 9, Animation keys and delegates在这里,你可以对当前运行的动画进行更多的控制,并使用委托方法对动画事件做出响应。
    • Chapter 10, Groups and advanced timing在本章中,你将一些简单的动画组合在一起作为一个组来运行。
    • Chapter 11, Layer Springs:在本章中,您将学习如何使用CASpringAnimation来创建强大而灵活的spring层动画。
    • Chapter 12, Keyframe animations and struct properties: 在这里,你将了解图层关键帧动画,它是强大的,与视图关键帧动画稍有不同。有一些关于动画结构属性的特殊处理,你也会学到。
    • Chapter 13, Shapes and masks: 通过CAShapeLayer在屏幕上绘制图形,并赋予它特殊的路径属性以动画效果。
    • Chapter 14, Gradient animations:学习如何使用CAGradientLayer帮助您绘制和动画渐变。
    • Chapter 15, Stroke and path animations:在这里,你将交互式地绘制图形,并使用关键帧动画的一些强大特性。
    • Chapter 16, Replicating animations: 你将学习如何创建多个图层内容,然后同步动画它们。
    你会有一场精彩的骑行——系好安全带!:]

    相关文章

      网友评论

          本文标题:层动画Layer Animations

          本文链接:https://www.haomeiwen.com/subject/cccavftx.html