点击项目并快速将方向从纵向更改为横向后,主视图控制器消失

时间:2013-04-25 09:15:59

标签: ios ipad master-detail

Xcode 4.5

适用于iPad设备。

对于iPad Master View控制器应用程序,主视图控制器在点击项目并快速将方向从纵向模式更改为横向模式后消失。

我为iPad使用了Master-Template应用程序的默认模板。 在纵向模式(iPad)中,我点击了主控制器上的“+”按钮并在10左右添加了多个项目。之后,我点击了主控制器中的一个突出显示的项目(参见屏幕截图),然后快速将方向从纵向更改为横向。在横向模式下,主控制器消失,并出现空白(黑色)屏幕。

我进一步分析了它,并在以下代码行中找到了问题

[self.masterPopoverController dismissPopoverAnimated:YES];

在DetailViewController.m中

- (void)setDetailItem:(id)newDetailItem
{
    if (_detailItem != newDetailItem) {
        _detailItem = newDetailItem;

        // Update the view.
        [self configureView];
    }

    if (self.masterPopoverController != nil) {
        [self.masterPopoverController dismissPopoverAnimated:YES];
    }        
}

如果我将NO传递给[self.masterPopoverController dismissPopoverAnimated:NO]; 一切都运转正常。

如何解决这个问题?

谢谢

Master-Detail application for iPad in portrait mode

Navigation/Master controller is gone

1 个答案:

答案 0 :(得分:0)

就我而言,这是IB中的复选标记:使用Autolayout

当我取消选中时,一切都旋转良好。

希望它有所帮助!