IOS的动画实现方式

本文介绍了iOS中创建动态用户界面的核心动画类,包括对视图图层的几何变换、使用动画和计时类、事务类以及UIView提供的动画接口。通过改变图层属性、使用CABasicAnimation、CAKeyframeAnimation、CATransition和UIView动画方法,可以实现丰富的动画效果。
摘要由CSDN通过智能技术生成

IOS提供了一系列核心动画类的接口来创建动态用户界面。核心动画类提供了以下一些方法:

1.对视图的图层类进行几何变换

图层主要用来显示内容的。每一个视图都默认创建其对应的图层最为根图层,其维护着一个图层类的集合,它们构成了一个图层树的层次结构,进行自底向上的绘制。我们可以改变图层的一些属性和进行图层位置的几何变换产生动画效果。


图层树包含每一层的对象模型值。他们就是你设定的图层的属性值。
呈现树包含了当前动画发生时候将要显示的值,例如你要给图层背景颜色设置新的值的时候,它会立即修改图层树里面相应的值。但是在呈现树里面背景颜色值在将要显示给用户的时候才被更新为新值。
渲染树在渲染图层的时候使用呈现树的值。渲染树负责执行独立于应用活动的复杂操作。渲染由一个单独的进程或线程来执行,使其对应用程序的运行循环影响最小。
 

图层一旦创建,你就可以通过矩阵变换来改变一个图层的几何形状。 CATransform3D 的数据结构定义一个同质的三维变换(4x4 CGFloat 值的矩阵),用于 图层的旋转,缩放,偏移,歪斜和应用的透视。
图层的两个属性指定了变换矩阵:transform 和 sublayerTransform 属性。图层的 transform 属性指定的矩阵结合图层的 anchorPoint 属性作用于图层和图层的子图层上 面。图 3 显示在使用 anchorPoint 默认值(0.5,0.5)的时候旋转和缩放变换如何影响一
个图层。图层的 sublayerTransform 属性指定的矩阵只会影响图层的子图层,而不会对 图层本身产生影响。
你可以通过以下的任何一个方法改变 CATransform3D 的数据结构: 

 1.使用CATransform3D函数,如:

CATransform3D transform = CATransform3DIdentity;
tran

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值