我正在开发双 iPad/iPhone 应用程序。
我遇到的问题仅发生在 iPad 上:
- 根视图控制器在 iPad 上是 UISplitViewController,在 iPhone 上是 UITabBarController
- 模态 UIViewController 可以出现在根控制器上
- 模态 UIViewController 可以出现在之前的模态控制器之上
- 在 iPad 上,模态控制器使用 UIModalPresentationStyle.PageSheet
一切正常,除了从 iPad 上解除最顶层的模态控制器——该方法被调用,但模态视图控制器不会被解除。我通过从前一个模态控制器调用 DismissModalViewControllerAnimated 来解散。
任何想法为什么这不能在 iPad 上工作?
在所有情况下,我从父控制器调用 PresentModalViewController 和 DismissModalViewControllerAnimated 来工作它的子模态控制器。
我正在使用 MonoTouch(您可以通过我的方法外壳来判断),但这可能无关紧要。我也可以在 Obj-C 中回答。
更新,以下可能会使它应该做的更清楚:
- 根 => 模态 A => 模态 B
- 关闭模态 B 应该只返回模态 A
- 关闭模态 A 应该只返回到 Root