码迷,mamicode.com
首页 > 其他好文 > 详细

自定义转场动画库

时间:2014-09-18 16:17:24      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:io   os   ar   for   art   sp   cti   on   c   

自定义转场动画库

 

#import <QuartzCore/QuartzCore.h>

 

@interface MyCATransition : CATransition

 

// 参数说明:

 

/********************type**************/

 

// `fade‘, 渐变

// `moveIn‘ 进入, 

// `push‘ 推出 

// `reveal‘. 展现 

// cube 立方 

// suckEffect 吸收 

// oglFlip 上下翻转 

// rippleEffect 水滴 

// pageCurl 卷页

// pageUnCurl 后翻页

// cameraIrisHollowOpen 开相机 

// cameraIrisHollowClose 关相机

 

/********************subtype**************/

// fromLeft‘, 

// `fromRight‘, 

// `fromTop‘

// `fromBottom‘

 /********************timingFunction**************/

// timingFunction:

// linear‘, 

// `easeIn‘, 

// `easeOut‘

// `easeInEaseOut‘

//

 

// 自定义转场动画

+ (MyCATransition *)catransitionWithType:(NSString *)type subType:(NSString *)subType duration:(double)duration timingFunction:(NSString *)timingName;

 

@end

 

#import "MyCATransition.h"

 

@implementation MyCATransition

 

+ (MyCATransition *)catransitionWithType:(NSString *)type subType:(NSString *)subType duration:(double)duration timingFunction:(NSString *)timingName {

    // 转场动画

    MyCATransition * animation = [MyCATransition animation];

    animation.type = type;

    animation.subtype = subType;

    animation.duration = duration;

    animation.timingFunction = [CAMediaTimingFunction functionWithName:timingName];

    

    

    return animation;

}

 

@end

 实例:

    将自定义动画对象加到需要进行转场的layer层 就会实现动画的炫酷效果哦

    MyCATransition * animation = [MyCATransition catransitionWithType:@"push" subType:@"fromBottom" duration:0.7 timingFunction:@"easeInEaseOut"];

    [self.navigationController.view.layer addAnimation:animation forKey:@"animation"];

 

END

自定义转场动画库

标签:io   os   ar   for   art   sp   cti   on   c   

原文地址:http://www.cnblogs.com/hanzhuzi/p/3979329.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!