动画效果

转自:http://www.cnblogs.com/huangdongcheng/archive/2011/11/08/2241302.html


在iPhone开发中,我们常常需要在不同的页面之间做动画的切换,这样看起来更加好看。基本的动画有以下三种:

1.UIView

UIView官方提供五种动画效果供大家使用,分别为:

?
UIViewAnimationTransitionNone    不使用动画
 
UIViewAnimationTransitionFlipFromLeft    从左向右旋转翻页
 
UIViewAnimationTransitionFlipFromRight    从右向左旋转翻页,与UIViewAnimationTransitionFlipFromLeft相反
 
UIViewAnimationTransitionCurlUp    卷曲翻页,从下往上
 
UIViewAnimationTransitionCurlDown    卷曲翻页,从上往下

 

例子:

?
[UIView beginAnimations: @"animationID" context:nil]; //开始一个动画块,第一个参数为动画块标识
 
[UIView setAnimationDuration:0.5f]; //设置动画的持续时间
 
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; //设置动画块中的动画属性变化的曲线,此方法必须在beginAnimations方法和commitAnimations,默认即为UIViewAnimationCurveEaseInOut效果。详细请参见UIViewAnimationCurve
 
[UIView setAnimationRepeatAutoreverses:NO]; //设置是否自动反转当前的动画效果
 
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES]; //设置过渡的动画效果,此处第一个参数可使用上面5种动画效果
 
[self.view exchangeSubviewAtIndex:1 withSubviewAtIndex:0]; //页面翻转
 
[UIView commitAnimations]; //提交动画

 

这样,我们就可以让UIView的页面通过动画实现页面之间的跳转。

2. CATransiton

CATransiton官方提供4种动画效果,分别为:

NSString * const kCATransitionFade;//渐渐消失

NSString * const kCATransitionMoveIn;//覆盖进入

NSString * const kCATransitionPush;//推出

NSString * const kCATransitionReveal;//与MoveIn相反

 

例子:

?
CATransition *animation = [CATransition animation]; //初始化动画
 
animation.duration = 0.5f; //间隔的时间
 
animation.timingFunction = UIViewAnimationCurveEaseInOut;
 
animation.type = kCATransitionPush; //设置上面4种动画效果
 
animation.subtype = kCATransitionFromTop; //设置动画的方向,有四种,分别为kCATransitionFromRight、kCATransitionFromLeft、kCATransitionFromTop、kCATransitionFromBottom
 
[self.view.layer addAnimation:animation forKey: @"animationID" ];

 


 

3.私有动画

私有动画是在UIView的基础上,设置animation.type,可以提供一下几种选择:

cube:像立方体那样翻转

suckEffect:渐渐缩小,与删除照片的动画一样

oglFlip:上下旋转,当subType为fromLeft或者fromRight时,与UIViewAnimationTransitionFlipFromLeft和UIViewAnimationTransitionFlipFromRight一样

rippleEffect:水波效果

pageCurl:与UIViewAnimationTransitionCurlUp一样

pageUnCurl:与UIViewAnimationTransitionCurlDown一样

cameraIrisHollowOpen:First half of cameraIris.

cameraIrisHollowClose:Second half of cameraIris

附加一个动画的源代码给大家参考一下,今天将的动画效果就到此介绍。谢谢大家。

附件地址:http://files.cnblogs.com/huangdongcheng/transition_ViewTransitions.zip


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值