UISplitView没有收到旋转事件

时间:2011-02-23 07:54:55

标签: uisplitviewcontroller

我正在开发一款iPad应用程序。请帮帮我。

我有一个普通的拆分视图,包含Root和Detail视图。 在Detail视图中,我使用presentpresentModalViewController弹出另一个Child视图。

我以纵向模式启动应用程序。弹出子视图后,我将iPad旋转到横向模式。子视图旋转正常,因为它收到了旋转事件。然后我关闭子视图(使用“完成”按钮)。

但是分割视图DID不接收旋转事件,因此它不知道它现在处于横向模式。那么,关闭子视图后,那时会发生什么: 窗户被拆分为一半。左侧(Root)只是黑色。右侧(细节)仍然存在(弹出按钮仍然存在)。

在这种情况下,我添加了代码以摆脱详细视图中的Popover按钮。但我不知道如何显示根视图。 我想解决方案是....如何告诉拆分视图旋转已经改变,因为旋转是在子视图中完成的???

任何建议表示赞赏。我是Objective-C的新手。非常感谢!!

摘要

  1. 以纵向模式开始
  2. 点击详细信息视图中的按钮
  3. 目前的模态子视图
  4. 旋转至风景
  5. 关闭模式子视图
  6. Splitview在现在横向模式下无法正确显示(见照片 请)
  7. https://devforums.apple.com/servlet/JiveServlet/downloadImage/10556/450-362/Screen+shot+2011-02-23+at+2.58.21+AM.png

2 个答案:

答案 0 :(得分:0)

您需要将UISplitViewController委托设置为选定的详细信息视图,因为这将是在纵向模式下处理弹出窗口的UIViewController。

因此,在分配详细信息视图时,还要将其指定为委托。您的详细信息视图也需要支持UISplitViewControllerDelegate协议。

答案 1 :(得分:0)

我有完全相同的问题在我的情况下解雇所提出的视图我不使用animation.if我使用动画问题将会消失。只需将动画设置为YES。

欢呼声,

Naveen Shan