CAAnimation采用了CAMediaTiming协议,可以调整时间,包括持续时间,速度,重复次数;采用了CAAction协议,可以通过响应动作的方式来显示动画.
CAAnimation的一些派生类:
CATransition 提供渐变效果:(推拉push效果,消退fade效果,揭开reveal效果)
CAAnimationGroup 允许多个动画同时播放
CABasicAnimation 提供了对单一动画的实现
CAKeyframeAnimation 关键桢动画,可以定义行动路线
CAConstraint 约束类,在布局管理器类中用它来设置属性
CAConstraintLayoutManager 约束布局管理器,是用来将多个CALayer进行布局的.各个CALayer是通过名称来区分,而布局属性是通过CAConstraint来设置的.
CATransaction 事务类,可以对多个layer的属性同时进行修改.它分隐式事务,和显式事务.
2.图层动画
Quartz Core 的能力远远不止一个简单的画板式图层。图层转场增强了现有的 CATransition 类,为其提供了一种方法,能用Quartz Core 的动画引擎来添加动画。CATransition 这个类是用来实现layer transition的动画效果的。我们需要预先设置动画的时间(setDuration ),需要的动画类型(setType 和setSubtype )。当图层含有动画的时候,一个(只能) CATransition 或CAAnimation 对象会被附加在图层上。一般可以使用CATransition模拟UIView的动画。
CATransition动画使用了类型type和子类型subtype两个概念。type属性指定了过渡的种类(淡化、推挤、揭开、覆盖)。subtype设置了过渡的方向(从上、下、左、右)。另外,CATransition私有的动画类型有(立方体、吸收、翻转、波纹、翻页、反翻页、镜头开、镜头关)。
转自http://milodream.diandian.com/post/2012-05-23/21370606
分享到:
相关推荐
本文将深入探讨两种主要的动画实现方式:基于Core Animation的CAAnimation和基于UIView的动画。这两种方法各有特点,适用于不同的场景。 首先,我们来看CAAnimation。CAAnimation是Core Animation框架的核心类,它...
`CAAnimation`是Core Animation框架的核心类,用于实现各种复杂的视觉效果,包括2D和3D动画。本知识点将深入讲解如何利用`CAAnimation`来实现一个点沿矩形路径的循环移动。 首先,`CAAnimation`是`CALayer`的一个...
《类型安全CAAnimation包装:构建安全的iOS动画框架》 在iOS开发中,Core Animation是实现动态效果和动画的关键框架,其中CAAnimation类是动画的核心。然而,由于其灵活性,直接使用CAAnimation可能存在误设类型的...
这个压缩包"ios-iOS开发CAAnimation动画初探.zip"显然是一个学习和探索CAAnimation的资源,包含了一个名为"LHAnimationGroupDemo"的示例项目,可能用于演示如何使用CAAnimationGroup、CABasicAnimation、...
然而,由于Objective-C的桥接,CAAnimation类在Swift中使用时可能会出现类型安全问题,导致设置错误的类型值。为了解决这个问题,开发者创建了一个名为"TheAnimation"的库,它是一个类型安全的CAAnimation封装,确保...
当然,iOS还提供了Core Animation框架,可以实现更复杂的动画效果,如路径动画、层属性动画等,这需要开发者对CALayer和CAAnimation有深入理解。对于新手来说,逐步学习并实践这些基础知识是至关重要的。
一、基本动画(CAAnimation) 基本动画是Core Animation中最简单的动画形式,用于改变CALayer的属性,如位置、透明度或大小。创建基本动画的关键在于设置`toValue`和`fromValue`,它们定义了动画的起始和结束状态。...
在iOS开发中,UI反馈是用户体验的重要组成部分,而HUD(Head Up Display)是一种常见的用于显示短暂信息或加载状态的用户界面元素。本示例主要介绍了如何使用Core Animation框架中的`CABasicAnimation`和`...
CAAnimation-EasingEquations CAAnimation上的一个类别,它提供了许多缓动方程来为您的应用程序添加一些 zazz(带有示例!) 为什么? 因为为动画添加缓动使它们更加逼真。 UIKit 提供了一组非常有限的缓动函数,...
UIBezierPath与CAAnimation是苹果提供的两个关键工具,用于构建复杂的动画效果,特别是路径动画。在这篇文章中,我们将探讨如何结合这两个类来实现一个有趣的心形路径动画。 首先,我们需要理解UIBezierPath。...
`UIAnimationDirector`是一个专为简化`CAAnimation`使用的工具,它旨在通过Objective-C语言提供一个更易理解和操作的接口,帮助开发者创建出更加流畅、丰富的用户界面动态效果。`CAAnimation`是Core Animation框架的...
在iOS开发中,UIBezierPath和CAAnimation是两个强大的工具,可以用来创建各种复杂的图形动画。本篇文章将详细讲解如何利用这两个技术实现一个逼真的心跳动画效果。 UIBezierPath是苹果提供的一个类,用于创建和操作...
主要是对CAKeyframeAnimation关键帧动画的使用,和scenekit实现的飞机游戏。具体分析请看博客:https://www.jianshu.com/p/15c52986ab6e 由于代码文件大于5M,无法上传,请去我的git仓库下载: ...
作者BearRan,源码FlowMenuAnimation,原型从网上找的,动效使用了CAAnimation和UIDynamic物理引擎。 大致步骤如下: 把效果图截取一张,拖到Sketch做背景 新建图层,使用钢笔工具临摹背景图勾勒出路径 注意:勾勒...
作者chenfengxiaoxixi,源码Animation-Collection,ios CAAnimation动画实践和SceneKit飞机小游戏,主要是对CAKeyframeAnimation关键帧动画的使用,和scenekit实现的飞机游戏。
动画 TheAnimation是类型安全的CAAnimation包装器。介绍例如,如果要使用CABasicAnimation为backgroundColor设置动画,则需要考虑类型,因为fromValue属性等等是Any? 。 如果使用BasicAnimation of TheAnimation ,...
`ios-动画.zip` 文件内容显然关注于iOS中的视图动画,特别是基于`CALayer` 和 `CAAnimation` 的核心动画实现。这两个核心动画类在iOS应用中扮演着至关重要的角色,用于创建丰富的视觉效果和流畅的动态交互。 `...