Core Animation 文档翻译 (第四篇)】的更多相关文章

Core Animation 文档翻译(第一篇)   2018-01-13  星期6 前言:作为iOS 开发,官方文档的阅读是很有必要的,值此周末便写下此文.作为iOS 实际经验3年的开发,之前的应用之前有阅读并实践过经典的<iOS核心动画高级技巧>,其gitbook地址:https://zsisme.gitbooks.io/ios-/content/chapter10/custom-easing-functions.html,然总觉此书的翻译版,对于目前的CoreAnimation 官方文档…
Core Animation 文档翻译(第一篇) 前言 作为iOS 开发,官方文档的阅读是很有必要的,值此周末便写下此文.作为iOS 实际经验3年的开发,之前有阅读并实践过经典的<iOS核心动画高级技巧>,其gitbook地址,然总觉此书的翻译版,较于目前的CoreAnimation 官方文档的有所空缺,故生念,愿有所补缺,便着手翻译CoreAnimation,如有纰漏,望各位兄台不吝赐教. 关于 Core Animation(以下翻译为:核心动画) 核心动画是可用于在iOS和OS X平台上实…
Core Animation 文档翻译 (第二篇) 核心动画基础要素 核心动画为我们APP内Views动画和其他可视化元素动画提供了综合性的实现体系.核心动画不是我们APP内Views的替代品,相反,它是一种结合Views来提供更好性能和支持Content动画的技术.它通过将Views的Content缓存进可以被绘图软件直接操作处理的Bitmaps来达到这种高性能.在某些情况下,这种缓存技术可能需要我们重新思考我们将要如何呈现和管理我们的APP的Content,但是大多数情况我们可以在不去考虑这…
Core Animation 文档翻译(第四篇) 让Layer的content动画起来 核心动画的基础接口以及为拥有Layer的View做的动画扩展接口,使得为Layer制作复杂动画变得简单化.例如改变Layer的frame的size.改变Layer在屏幕上的position.应用旋转transform.或者改变它的opacity.通过使用核心动画,创建一个动画效果将会变得简单的就像修改属性一样,但是我们也能显式的创建和设置动画参数. 关于创建更多高级动画可以参见Advanced Animati…
Core Animation 文档翻译(第三篇) 设置Layer对象 当我们使用核心动画时,Layer对象是一切的核心.Layers 管理我们APP的可视化content,Layer也提供了content样式及content可视化的外观的调整选项.尽管iOSAPP自动支持Layer,但是OS XAPP必须明确开启Layer的使用才能利用这些相关的性能特点.一旦开启Layer的使用,我们需要去理解如何配置和操作Layers才能得到想要的效果. 为APP开启核心动画的支持 在iOS APP里,核心动…
  高级动画技巧 配置属性动画或者关键帧动画的方式是多种多样的.需要同时执行多个动画或者顺序执行多个动画的APP,可以通过高级的方式同步这些动画的timing或者将这些动画绑定在一起.我们也可以使用其他类型的动画对象来创建可视化的transitions和别的有趣的动画效果.   过渡动画支持Layer可见性的变化 就像本级标题名字所说一样,一个transition动画对象为Layer创建一个动画性的过渡效果.transistion对象最常用的方法就是以协调的方式让一个Layer动画形式的出现,并…
前言 核心动画是提高基于APP动画帧率的好方式,但是核心动画的使用不代表性能的提升的保证.尤其在OSX,当使用核心动画时,我们仍需选择最有效的方式.和所有的性能相关的问题一样,我们应该使用工具时时的评估和跟踪APP的性能,以至于我们能够确保性能是提升而不是退化的.   综合的建议和技巧 有以下几种方式能让我们的Layers更有效的实现效果.对于任何优化来说,我们应该在尝试优化前先测量当前代码的性能:根据未优化之前的性能检测结果,能够让我们知道所做的优化是否提升了性能.   尽可能的使用不透明的L…
  构建Layer层次结构 在APP中大多数情况下,将Layer和View对象结合使用是Layer最好的使用方式.然而,很多时候我们可能需要通过添加单独的Layer对象,以便增加视图继承层次:当为了提高性能,或为了实现View很难实现的特性,此时应该使用Layers,此时也需要知道如何管理我们创建Layer层次.   将Layers安插进Layer层次结构里 Layer层次结构在许多方面都和Views层次结构相似.我们将一个Layer嵌入到另外一个Layer里面,此时便在被用作嵌入的Layer(…
前言 核心动画使用action对象实现它的可视化动画.一个action对象是指遵循CAAction协议并定义了Layer相关的动画行为的对象.所有的CAAnimation对象实现了这个协议,无论何时Layer的属性发生变化的时候就会执行对应的action对象(包含CAAnimation对象). 可动画的属性是action的一种类型,我们可以定义几乎所有我们想要的actions,为了达成这个目的,我们就需要定义自己的action并把它们关联到Layer对象   自定义遵守CAAction协议的Ac…
前言   许多CALayer和CIFliter的属性都是可动画的.本节附录列出了这些属性默认使用的动画.   CALayer可动画属性   表B-1展示了CALayer类的可动画属性.针对每个属性此表也列出了对应的默认动画对象的类型,这些动画以隐式的方式执行.   Table B-1 Layer的属性和他们默认的动画 table th:first-of-type { width: 25%; } 属性 默认动画 anchorPoint 使用默认的隐式CABasicAnimation对象,在表Tab…