UISplitViewController没有在ios 5中调用视图委托方法

时间:2011-10-27 05:28:12

标签: iphone ipad ios5 uisplitviewcontroller

我在iOS 5中注意到了这个症状 - 在左侧创建一个带有ViewController 1的UISplitViewController,在右边创建一个ViewController 2。以纵向打开popovercontroller,然后关闭popovercontroller。 Viewcontroller 1的viewWillDisappear / viewDidDisappear方法没有得到调用。但是在iOS 4.3中,viewWillDisappear / viewDidDisappear方法确实可以调用。

任何人都知道这种行为改变的解释吗?

2 个答案:

答案 0 :(得分:2)

显然,UISplitViewController的automaticForwardAppearanceAndRotationMethodsToChildViewControllers方法设置为返回NO而不是YES。因此,继承UISplitViewController并重写automaticForwardAppearanceAndRotationMethodsToChildViewControllers以返回YES解决了问题。

干杯!

答案 1 :(得分:0)

我尝试使用未经修改的拆分视图控制器模板(主 - 详细信息应用程序,仅限iPad,没有故事板),我无法确认您的观察结果。对于拆分视图控制器的两个子节点,都会调用出现/消失的回调。

因此,您的应用中肯定会发生其他事情;我们的初始条件明显不一样,不知怎的......或者我们可能不会在同一时刻谈论完全相同的回调。文档中有一个清晰的注释("消息转发到其子视图控制器"),关于拆分视图控制器如何转发这些回调消息。