Ian*_*Ian 1 modal-dialog uiviewcontroller ios
它似乎适用于任何一种情况,但为什么和如何,哪种是最好的方法?
让我们说,视图控制器A已经呈现了B,而B则依次呈现了C.
当你打电话时dismissViewControllerAnimated:completion:,iOS会检查你正在调用它的视图控制器是否在其presentedViewController属性中有一个子节点.如果确实如此,那么它会解散该控制器.
因此,如果我在我们的例子中在B上调用它,它就会解散C,但是如果我在A上调用它,它会解散B(它会带走C).
如果我在C上调用它,那么它没有孩子.然后iOS检查presentingViewController属性.如果设置了,则要求它关闭其控制器.因此,如果我在C上调用它,iOS会将请求发送回B,这会解除C.
所以在B或C上调用该方法将摆脱C,而在A上调用它将摆脱B和C.
每次都在B上,在所呈现的东西上调用它.这是
不那么混乱,因为你的现在和解雇将在同一个地方,并且
更多的未来证明,因为在未来的某个时候你可能会让C出现另一个视图控制器(D),然后解雇会突然中断(它会突然开始解雇D,而不是解雇自己).
| 归档时间: |
|
| 查看次数: |
388 次 |
| 最近记录: |