Warning: Attempt to present on whose view is not in模态跳转问题
2016-02-18 13:20
337 查看
错误分析:
controller A present controller B ,前提是A的view要存在,如果不存在,就会报这个错。
解决方法:
将原来的present语句由 viewDidLoad方法中移到 viewDidAppear中,问题就可以解决。但是这样的话,画面会闪现一下parentViewController的view,这个问题目前不清楚怎么解决,有待高人指点。
并且viewDidAppear这个方法是每次都进入,和ViewDidLoad只进一次不同,所以无法达到我要的效果。
最终方案:
摈弃presentModel方法,在viewDidLoad中添加如下语句:
[self.view addSubview:controllerB.view];
[self addChildViewController:controllerB];
自己添加想要的动画,实现对presentModel方法的模仿。
controller A present controller B ,前提是A的view要存在,如果不存在,就会报这个错。
解决方法:
将原来的present语句由 viewDidLoad方法中移到 viewDidAppear中,问题就可以解决。但是这样的话,画面会闪现一下parentViewController的view,这个问题目前不清楚怎么解决,有待高人指点。
并且viewDidAppear这个方法是每次都进入,和ViewDidLoad只进一次不同,所以无法达到我要的效果。
最终方案:
摈弃presentModel方法,在viewDidLoad中添加如下语句:
[self.view addSubview:controllerB.view];
[self addChildViewController:controllerB];
自己添加想要的动画,实现对presentModel方法的模仿。
相关文章推荐
- [Locked] Wiggle Sort
- ios上 更改 状态栏(UIStatusBar)的颜色,你值得一看、收藏
- RecyclerView的基本用法:深入研究 (六)
- redis 五种数据类型的使用场景
- win7安装Genymotion 和 virtualBox eclipse插 使用离线ova 附下载
- 记录一则数据库连接故障ORA-12560,ORA-12518
- NSDateFormatter调整时间格式的代码
- 百度地图的简单实用 iOS
- zabbix自动发现结合shell实现自动发现占用内存最大top10进程并监控其资源
- phalcon官方文档伴读视频发布了
- erlang命令行参数
- linux学习之系统管理、网络配置、软件安装
- RxJava 详解
- 1、MyEclipse的常用配置
- 3.Tachyon系统架构
- Matlab 2013a安装后关联“.m”文件
- git 中fetch+rebase工作流
- Java线程(五):Timer和TimerTask
- 通信录
- 第一个冒泡算法 C语言