视图切换,没有NavigationController的情况下,一般会使用presentViewController来切换视图并携带切换时的动画,
其中切换方法如下:
– presentViewController:animated:completion: 弹出,出现一个新视图 可以带动画效果,完成后可以做相应的执行函数经常为nil
– dismissViewControllerAnimated:completion:退出一个新视图 可以带动画效果,完成后可以做相应的执行函数经常为nil
切换动画在压入一个新视图和弹出顶层视图均可以使用,下面只以压入视图为例。
presentModalViewController:animated:completion:使用系统自带四种动画
简单的实现方式:
[page2Controller setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
[self presentModalViewController:myNextViewController animated:YES completion:nil];
系统支持的四种动画:
typedef enum {
UIModalTransitionStyleCoverVertical=0, //默认方式,竖向上推
UIModalTransitionStyleFlipHorizontal, //水平反转
UIModalTransitionStyleCrossDissolve,//隐出隐现
UIModalTransitionStylePartialCurl,//部分翻页效果
} UIModalTransitionStyle;
presentModalViewController:animated:completion: 不用自带的四种动画效果
实现全翻页效果:
CATransition *animation = [CATransition animation];
animation.duration = 1.0;
animation.timingFunction = UIViewAnimationCurveEaseInOut;
animation.type = @"pageCurl";
//animation.type = kCATransitionPush;
animation.subtype = kCATransitionFromLeft;
[self.view.window.layer addAnimation:animation forKey:nil];
[self presentModalViewController:myNextViewController animated:NO completion:nil];
常見的轉換類型(type):
kCATransitionFade //淡出
kCATransitionMoveIn //覆盖原图
kCATransitionPush //推出
kCATransitionReveal //底部显出来
SubType:
kCATransitionFromRight
kCATransitionFromLeft // 默认值
kCATransitionFromTop
kCATransitionFromBottom
设置其他动画类型的方法(type):
pageCurl 向上翻一页
pageUnCurl 向下翻一页
rippleEffect 滴水效果
suckEffect 收缩效果,如一块布被抽走
cube 立方体效果
oglFlip 上下翻转效果
ios设置简单转场动画
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 先看看CAAnimation动画的继承结构 CAAnimation{ CAPropertyAnimation { ...
- 本文转载自:http://www.cocoachina.com/ios/20150105/10812.html 为...
- 如果想让事情变得顺利,只有靠自己--夏尔·纪尧姆 上一章介绍了隐式动画的概念。隐式动画是在iOS平台创建动态用户界...
- 2UIView动画 2.1概述 UIView视图的动画功能,可以使在更新或切换视图时有放缓节奏、产生流畅的动画效果...