CALayer CAAnimation

来源:互联网 发布:欧缇丽淘宝官网是真假 编辑:程序博客网 时间:2024/06/09 23:37
http://blog.sina.com.cn/s/blog_7b9d64af0101bu9j.html 

CATransition 类

 

CATransition实现了layer的过渡动画。也就是说是控制layer的过渡动画类。

我们可以通过CATransition来实现我们特定的过渡动画。也可以通过一个自定义的CIFilter实体来实现过渡动画。

 

CATransition相关属性

 

endProgress

@property float endProgress

定义过渡的结束点

结束点的值必须大于或者等于开始点。

默认值为1.0。

 

startProgress

@property float startProgress

 

定义过度的开始点

开始点的值必须小于或者等于结束点。

默认值为0.0。

 

这两个属性是float类型的。

可以控制动画进行的过程,可以让动画停留在某个动画点上,值在0.0到1.0之间。endProgress要大于等于startProgress。

比如:立方体转,可以设置endProgress= 0.5,让动画停留在整个动画的特定位置(停止在旋转一般的状态)。

 

filter

@property(retain) CIFilter *filter

 

为动画添加一个可选的滤镜。

如果指定,那么指定的filter必须同时支持x和y,否则该filter将不起作用。

默认值为nil。

如果设置了filter,那么,为layer设置的type和subtype属性将被忽略。

该属性只在iOS 5.0以及以后版本被支持。

 

subtype

@property(copy) NSString *subtype

指定预定义的过渡方向。

默认为nil。

如果指定了filter,那么该属性无效。

 

预定义的过渡方向为:

NSString * const kCATransitionFromRight;

NSString * const kCATransitionFromLeft;

NSString * const kCATransitionFromTop;

NSString * const kCATransitionFromBottom;

分别表示:过渡从右边、左边、顶部、底部 开始。

 

type

@property(copy) NSString *type

 

指定预定义的过渡效果。

默认为kCATransitionFade

如果指定了filter,那么该属性无效。

 

预定义的过渡效果:

NSString * const kCATransitionFade;

NSString * const kCATransitionMoveIn;

NSString * const kCATransitionPush;

NSString * const kCATransitionReveal;

 

分别表示:淡出、覆盖原图、推出、从底部显示。

 

注意:

还有很多私有API效果,使用的时候要小心,可能会导致app审核不被通过(悲剧啊,为啥有却不让用啊!好东西不应该被束之高阁!):

 

fade     //交叉淡化过渡(不支持过渡方向)

push     //新视图把旧视图推出去

moveIn   //新视图移到旧视图上面

reveal   //将旧视图移开,显示下面的新视图

cube     //立方体翻滚效果

oglFlip  //上下左右翻转效果

suckEffect   //收缩效果,如一块布被抽走(不支持过渡方向)

rippleEffect //滴水效果(不支持过渡方向)

pageCurl     //向上翻页效果

pageUnCurl   //向下翻页效果

cameraIrisHollowOpen  //相机镜头打开效果(不支持过渡方向)

cameraIrisHollowClose //相机镜头关上效果(不支持过渡方向)

 

 

 

http://www.cocoachina.com/ios/20141022/10005.html

 

0 0
原创粉丝点击