定义NavigationController pop 和push的动画
2016-03-21 13:55
375 查看
系统默认的NavigationController还不错,但是时间长了会有审美疲劳,今天在网上找了找资料,改变默认的动画效果。
1.添加QuartzCore并引入头文件
#import <QuartzCore/CoreAnimation.h>
2. PushView 的动画修改
CATransition *transition = [CATransition animation];
transition.duration = 1;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromTop;
transition.delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];
self.navigationController.navigationBarHidden = NO;
[self.navigationController pushViewController:viewController animated:NO];
3.popView的动画
CATransition *transition = [CATransition animation];
transition.duration =0.4;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionReveal;
//transition.subtype = kCATransitionFromBottom;
transition.delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];
self.navigationController.navigationBarHidden = NO;
[self.navigationController popViewControllerAnimated:NO];
1.添加QuartzCore并引入头文件
#import <QuartzCore/CoreAnimation.h>
2. PushView 的动画修改
CATransition *transition = [CATransition animation];
transition.duration = 1;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromTop;
transition.delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];
self.navigationController.navigationBarHidden = NO;
[self.navigationController pushViewController:viewController animated:NO];
3.popView的动画
CATransition *transition = [CATransition animation];
transition.duration =0.4;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionReveal;
//transition.subtype = kCATransitionFromBottom;
transition.delegate = self;
[self.navigationController.view.layer addAnimation:transition forKey:nil];
self.navigationController.navigationBarHidden = NO;
[self.navigationController popViewControllerAnimated:NO];
相关文章推荐
- Apache Shiro 简介
- CentOS 7.0 服务管理 – systemctl 命令
- 如何正确配置 Nginx+PHP
- cropper插件实现头像截取
- Nginx服务器的反向代理proxy_pass配置方法讲解
- Java Web开发Tomcat中三种部署项目的方法
- Tomcat服务不能启动Jacob的问题
- CentOS 6.5下配置LVM-操作过程-for-2个3T盘
- docker数据管理2
- 在linux下解压常见软件,并添加环境变量;定制linux系统服务
- docker数据管理2
- docker数据管理2
- linux下简单模拟文件系统
- Web Tab, Project Properties
- Ubuntu文件浏览器 - 开发Scope/应用利器
- Java开发十大必备网站
- Linux企业运维高效技巧心得及分享
- openssl工具列表
- 编写,其实就是copy出来驱动程序,pass
- OpenCV入门:简单图像处理实例——平滑滤波