我正在开发iPad/iPhone双应用程序。
我遇到了一个仅在iPad上出现的问题:
- Root view controller is a UISplitViewController on iPad, UITabBarController on iPhone
- A modal UIViewController can appear over the root controller
- A modal UIViewController can appear over the previous modal controller
- On iPad, modal controllers are using UIModalPresentationStyle.PageSheet
一切都正常,除了从iPad中移除最顶层的模态控制器——方法被调用,但模态视图控制器不会移除。我通过从上一个模态控制器调用DismissModalViewControllerAnimated来解除。
你知道为什么这在iPad上不起作用吗?
在所有情况下,我从父控制器调用PresentModalViewController和DismissModalViewControllerAnimated来处理其子模式控制器。
我使用的是MonoTouch(你可以通过我的方法来判断),但这可能无关紧要。我也可以接受Obj-C中的答案。
更新,以下内容可能会使它应该做的事情更加清楚:
- Root => Modal A => Modal B
- Dismissing Modal B should just return to Modal A
- Dismissing Modal A should just return to Root