`
seemefly163_0
  • 浏览: 19772 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
最近访客 更多访客>>
社区版块
存档分类
最新评论

更改pushViewController和popViewController的动画效果

阅读更多

iPhone SDK的NavigationController提供的动画效果默认只有一种,如何实现各种不同的呢?
下面是来自three20的实现,大家只要把这两个方法作为UINavigationController的Category方法调用就可以了

 (void)pushAnimationDidStop {
}

- (void)pushViewController: (UIViewController*)controller
    animatedWithTransition: (UIViewAnimationTransition)transition {
  [self pushViewController:controller animated:NO];

  [UIView beginAnimations:nil context:nil];
  [UIView setAnimationDuration:TT_FLIP_TRANSITION_DURATION];
  [UIView setAnimationDelegate:self];
  [UIView setAnimationDidStopSelector:@selector(pushAnimationDidStop)];
  [UIView setAnimationTransition:transition forView:self.view cache:YES];
  [UIView commitAnimations];
}

- (UIViewController*)popViewControllerAnimatedWithTransition:(UIViewAnimationTransition)transition {
  UIViewController* poppedController = [self popViewControllerAnimated:NO];

  [UIView beginAnimations:nil context:NULL];
  [UIView setAnimationDuration:TT_FLIP_TRANSITION_DURATION];
  [UIView setAnimationDelegate:self];
  [UIView setAnimationDidStopSelector:@selector(pushAnimationDidStop)];
  [UIView setAnimationTransition:transition forView:self.view cache:NO];
  [UIView commitAnimations];

  return poppedController;
}

 

分享到:
评论

相关推荐

    iOS pushViewController实例,有层次效果和手势滑动,很火很实用

    最近很多应用都在用的pushViewContoller效果,比如百度地图。希望能够帮助到大家。

    导航控制器pushViewController

    导航控制器pushViewController,导航控制器pushViewController的源代码。

    IOS pushViewController实例 百度地图push视图效果

    pushViewContoller实现的手势滑动 百度地图push视图效果完整实例代码

    swift-iOSViewController间切换的转场动画

    XLBubbleTransition 是一个适用于UINavigation的转场动画,在Push和Pop这两个动作时显示

    IOS实战之自定义转场动画详解

    如果用到了navigationController,还可以调用pushViewController:animated:和popViewController这一组函数将新的视图控制器压栈、弹栈。 下图中所有转场动画都是自定义的动画,这些效果如果不用自定义动画则很难甚至...

    ios开发navigationController pushViewController 方式多次跳转返回到最上层返回到指定的某一层的实现方法

    主要介绍了ios开发navigationController pushViewController 方式多次跳转返回到最上层返回到指定的某一层的实现方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下

    实现多层视图布局效果

    可以设置视图出现和隐藏的过渡动画,有6种动画方式(具体请看视频或者下载代码体验)。视图推进、退出动画十分流程,大家可以研究一下吧。 使用方法: 创建一个SCStackViewController实例: stackViewController =...

    解决iOS 7中短时间动画案例

    这个是解决iOS 7中短时间动画案例,源码SafeTransition,解决iOS 7中短时间内连续push或者pop view动画操作而产生崩溃的bug。 bug描述原因为 Can not add self as subview。可以用下面这段代码重现这个bug: -...

    Flutter路由的跳转、动画和传参详解(最简单)

    做Android/iOS原生开发的时候,要打开一个新的页面,你得知道你的目标页面对象,然后初始化一个Intent或者ViewController,再通过startActivity或者pushViewController来推出一个新的页面,不能跟web一样,直接丢一...

    ios-图片浏览器.zip

    一个简单的好用的的图片浏览器 下载项目后解压把里面的PhotoBrowserFramework拷贝到项目中,如果是xocde7.0 ,需要修改配置文件的的网络请求,否则无法下载图片 在Info.plist中添加 NSAppTransportSecurity 类型 ...

    HHTransition:主流转场动画,无侵入,API简单易用

    主流转场动画 1,HHTransition优势 1,API只有两个方法,易调用2,面向切面编程,无侵入,不需要在VC中设置代理3,易扩展,只需要重建转场对象即可 2,HH过渡不足 1,不够灵活,对于同一个一个转场对象无法设置不同...

    JNAPushPopCompletionBlock:UINavigationController PushPop UIViewController的完成块

    JNAPushPopCompletionBlock概要的完成块[ self .navigationController pushViewController: (nonnull UIViewController *) animated: ( BOOL )] 和[ self .navigationController popViewControllerAnimated: ( BOOL ...

    ios-RACBaseServices.zip

    原ViewContoller和NavigationController的presentViewController和pushViewController等方法,将彻底被services替代, service:负责调度controllerViewModel,通过router进行映射, view controller stack:负责...

    学习iOS自定义导航控制器UINavigationController

    1、一般导航条标题的字体setTitleTextAttribute和背景颜色setBackgroundImage都是统一的,可以在load方法中使用appearanceWhenContainedIn统一设置 2、一般导航条的返回按钮需要自定义,一般除了栈底控制器有导航条...

    ios-仿今日头条SegmentedControl.zip

    仿今日头条SegmentedControl 几行代码搞定 ``` MLViewController *vv = [[MLViewController alloc] init]; OneViewController * alloc] init... [self.navigationController pushViewController:vc animated:YES]; ```

    IOS设置页面的封装ZFSetting.zip

    演示效果:用法示例:用法:直接继承ZFBaseSettingViewController,创建UIViewController的类,实现以下方法就可以实现设置页面的显示。初始化Item:__weak typeof(self) weakSelf = self; // 初始化Item ...

    ios-SGAdvertScrollView.zip

    淘宝、天猫、京东、支付宝等 app 常见的文字轮播视图 CocoaPods 导入 pod 'SGAdvertScrollView','~> 1.2.6' ... 例一: ... [self.navigationController pushViewController:nextVC animated:YES]; }

    快速实现APP中的设置界面效果

    源码TableViewSettingList,这也是快速实现APP中的设置界面效果案例,希望大家能够喜欢。 集成步骤: 0、把TableViewSettingList文件夹拽入自己项目中 1、新建一个UITableViewController继承自...

    ios-ZZYWeiXinTakeMovie.zip

    仿微信拍摄小视频功能 有重拍功能,有对焦功能,可以设置拍摄多帧数和最长拍摄时间。 使用和设置如下: ...TakeMovieViewController *TMVC = ...[self.navigationController pushViewController:TMVC animated:YES];

Global site tag (gtag.js) - Google Analytics