iOS-多级presentViewController直接返回一级界面
2016-03-23 09:35
537 查看
转自:
http://www.cnblogs.com/yingkong1987/p/3343937.html
当遇到:
A presentViewController B , B presentViewController C, C presentViewController D,问如何从D一下子回到A,麻烦一点的办法就是一级一级的dismiss。
下面来说说我的办法:
首先,实现 Base_VC 作为所有视图控制器的基类,然后在基类中实现返回最下层viewController的办法(注意:最底层是UIViewController,所有Base_VC都放在其上边!)
在Base_VC基类控制器.h方法中暴露返回跟控制器的对象方法
在Base_VC的 .m 方法中实现返回跟控制器的方法
项目测试Demo已上传OSChina:链接:https://git.oschina.net/qxuewei/PresentViewControllerToRootDemo
http://www.cnblogs.com/yingkong1987/p/3343937.html
当遇到:
A presentViewController B , B presentViewController C, C presentViewController D,问如何从D一下子回到A,麻烦一点的办法就是一级一级的dismiss。
下面来说说我的办法:
首先,实现 Base_VC 作为所有视图控制器的基类,然后在基类中实现返回最下层viewController的办法(注意:最底层是UIViewController,所有Base_VC都放在其上边!)
在Base_VC基类控制器.h方法中暴露返回跟控制器的对象方法
-(void)toRootViewController;
在Base_VC的 .m 方法中实现返回跟控制器的方法
-(void)toRootViewController{ UIViewController *viewController = self; while (viewController.presentingViewController) { //判断是否为最底层控制器 if ([viewController isKindOfClass:[Base_VC class]]) { viewController = viewController.presentingViewController; }else{ break; } } if (viewController) { [viewController dismissViewControllerAnimated:YES completion:nil]; } }
项目测试Demo已上传OSChina:链接:https://git.oschina.net/qxuewei/PresentViewControllerToRootDemo
相关文章推荐
- iOS 蓝牙4.0开发
- ios的位置和方向(来自苹果官方文档,仅供简单参考)
- ios的位置和方向(来自苹果官方文档,仅供简单参考)
- 详解iOS应用开发中autoresizing尺寸自动适应属性的用法
- m4a文件在iOS上的流媒体播放
- ios启动过程
- iOS 中的数据持久化2.0-bruceyou1990
- iOS动态分享收藏举报弹出框
- iOS Safari阅读模式分析过程
- iOS Safari阅读模式研究
- iOS的事件
- 我在蜂窝教育iOS培训 成就工作技能
- IOS 添加自定义字体包和打印输出字体包里面的内容名字
- iOS7 edgesForExtendedLayout
- 设计iOS中随系统键盘弹收和内容文字长度自适应高度的文本框
- iOS启动页尺寸及注意事项
- iOS 用xib自定义view控件 debug笔记
- IOS学习 autoresizing 屏幕适配 父子视图
- iOS web remote debug 正确的姿势
- iOS 自定义下载进度条