详细信息UISplitViewController中的UIViewController在旋转设备时无法正确调整大小

时间:2010-11-13 21:08:32

标签: uinavigationcontroller uisplitviewcontroller

我已经以编程方式完成了所有工作。当我将设备从横向旋转到纵向时,细节VC仍然看起来是二次的。它没有扩大规模。

我将视图的backgroundColor更改为黄色。当它旋转时,我看到一个黄色的立方体,在它上面大约300点左右是灰色的。视图控制器没有正确调整其视图大小。

我已设置所有自动调整遮罩:

detailViewController.view.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin |     UIViewAutoresizingFlexibleRightMargin |     UIViewAutoresizingFlexibleTopMargin |     UIViewAutoresizingFlexibleBottomMargin |     UIViewAutoresizingFlexibleHeight |     UIViewAutoresizingFlexibleWidth;

没有帮助。即使旋转到纵向,视图仍然像横向模式一样是二次的。那它实际上要高得多。

还有什么可能导致这种不良行为?我从Interface Builder中的一个苹果示例中查看了所有这些设置,我的程序化创建完全重新创建了我所能告诉的内容。必须遗漏一些东西。可能是某些自动调整大小的掩码丢失了。

1 个答案:

答案 0 :(得分:1)

我经常在模拟器(4.1)中看到二次细节视图,即使在Apple的例子中也是如此(http://developer.apple.com/library/ios/#samplecode/MultipleDetailViews/Introduction/Intro.html# // apple_ref / doc / uid / DTS40009775)但它不是100%可重复的。向前和向后切换方向,没关系。我从未在真实设备上看到过这个问题。

还有一个猜测:是否所有的视图控制器(拆分视图本身,根控制器和所有细节视图)都覆盖了shouldAutoRotateToOrientation并在那里返回YES?