欢迎来到天天文库
浏览记录
ID:34416894
大小:293.50 KB
页数:20页
时间:2019-03-05
《ios开发学习之核心动画》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、http://www.mobiletrain.org/iOS开发学习之核心动画核心动画基本概念基础动画(CABasicAnimation)关键帧动画(CAKeyframeAnimation)动画组转场动画-CATransitionUIView的转场动画-双视图一、核心动画基本概念1.导入QuartzCore.framework框架开发步骤1).初始化一个动画对象(CAAnimation)并且设置一些动画相关属性2).CALayer中很多属性都可以通过CAAnimation实现动画效果,包括:opacit
2、y、position、transform、bounds、contents等(可以在API文档中搜索:CALayerAnimatableProperties)3).添加动画对象到层(CALayer)中,开始执行动画4).通过调用CALayer的addAnimation:forKey增加动画到层(CALayer)中,这样就能触发动画。通过调用removeAnimationForKey可以停止层中的动画5).CoreAnimation的动画执行过程都是后台操作的,不会阻塞主线程2.属性北京千锋互联科技有限公司
3、版权所有http://www.mobiletrain.org/1).duration:动画的持续时间2).repeatCount:重复次数(HUGE_VALF、MAXFLOAT无限重复)3).repeatDuration:重复时间(用的很少)4).removedOnCompletion:默认为Yes。动画执行完后默认会从图层删除掉5).fillMode6).biginTime7).timingFunction:速度控制函数,控制动画节奏8).delegate二、基础动画(CABasicAnimation
4、)如果只是实现简单属性变化的动画效果,可以使用UIView的块动画替代基本动画1.属性说明-fromValue:keyPath相应属性值的初始值-toValue:keyPath相应属性的结束值2.动画过程说明:-随着动画的就行,在duration的持续时间内,keyPath相应的属性值从fromValue渐渐变为toValue-keyPath内容是CALayer的可动画Animation属性-如果fillMode=kCAFillModeForwards同时removedOnCompletion=NO,那
5、么在动画执行完毕后,图层会保持显示动画执行后的状态,但在实质上,图层的属性值还是动画执行前的初始值,并没有真正改变3.代码实现位移需要考虑目标点设定的问题1.将动画的所有方法封装到一个类里面MyCAHelper.h#import#import#definekCAHelperAlphaAnimation@"opacity";//淡入淡出动画北京千锋互联科技有限公司版权所有http://www.mobilet
6、rain.org/#definekCAHelperScaleAnimation@"transform.scale";//比例缩放动画#definekCAHelperRotationAnimation@"transform.rotation";//旋转动画#definekCAHelperPositionAnimation@"position";//平移位置动画@interfaceMyCAHelper:NSObject#pragmamark-基本动画统一调用方法+(CABasicAnimation*)myB
7、asicAnimationWithType:(NSString*)animationTypeduration:(CFTimeInterval)durationfrom:(NSValue*)fromto:(NSValue*)toautoRevereses:(BOOL)autoRevereses;#pragmamark-关键帧动画方法#pragmamark摇晃动画+(CAKeyframeAnimation*)myKeyShakeAnimationWithDuration:(CFTimeInterval)du
8、rationangle:(CGFloat)anglerepeatCount:(CGFloat)repeatCount;#pragmamark贝塞尔路径动画+(CAKeyframeAnimation*)myKeyPathAnimationWithDuration:(CFTimeInterval)durationpath:(UIBezierPath*)path;#pragmamark弹力仿真动画+(CAKeyframeAnimation*)my
此文档下载收益归作者所有