dismissViewControllerAnimated 关闭所有视图控制器到根 [swift]
Posted
技术标签:
【中文标题】dismissViewControllerAnimated 关闭所有视图控制器到根 [swift]【英文标题】:dismissViewControllerAnimated close all view controller to root [swift] 【发布时间】:2016-03-04 11:30:37 【问题描述】:假设我有 4 个视图控制器
第 1 页 ----showdetail----> 第 2 页 ----showdetail----> 第 3 页 ----showdetail----> 第4页
我想用self.dismissViewControllerAnimated(true, completion: nil)
从第 4 页回到第 3 页。它在 ios 9 中运行良好,但是当我在 iOS 8 设备中尝试时,它会将所有视图控制器关闭到第 1 页
【问题讨论】:
你从哪里打电话给dismissViewControllerAnimated
?
你为什么使用 showdetail segue 类型?您显示 segue 类型并使用以下代码。 self.navigationController?.popToRootViewControllerAnimated(true)
showdetail segue 是一种替换视图控制器..
@showdetail 我首先使用'show',当我意识到 ios 8 的错误时我更改为 showdetail。好的,我试试看
你在使用 NavigationController 吗?要仅弹出一个视图,您可以执行[self.navigationController popViewControllerAnimated:YES]
。
【参考方案1】:
您可能希望使用Present Modally
segue 而不是Show Detail
。这里对每种segues都有很好的解释What's the difference between all the Selection Segues?
【讨论】:
以上是关于dismissViewControllerAnimated 关闭所有视图控制器到根 [swift]的主要内容,如果未能解决你的问题,请参考以下文章
dismissViewControllerAnimated:completion: 导致内存崩溃
在当前动画完成之前开始dismissViewControllerAnimated
调用了dismissViewControllerAnimated,但没有解除ViewController
状态恢复后,dismissViewControllerAnimated 没有使用相同的动画
dismissViewControllerAnimated() 不会关闭视图控制器
dismissViewControllerAnimated:completion: 方法替换在 Xcode4.6.1 上不起作用