按下新界面控制器时,不会读取iPad界面

时间:2010-10-14 20:39:26

标签: iphone cocoa-touch ipad

我正在编写一个iPad应用程序,它使用弹出窗口中的菜单来更改显示的视图。我有一个根视图控制器,它始终存在并将其内容视图更改为子视图控制器,例如Home,News等...

现在问题出现了:让我说我在家庭控制器上处于纵向模式,然后转到新闻控制器,然后旋转到横向,根控制器旋转正常,它包含的新闻控制器也是如此。但是当我回到家用控制器时,它仍处于纵向模式。视图旋转到横向,但其大小仍为纵向,因此宽度仍为(768像素宽)。显示所有子控件的根视图控制器正确旋转,如果内容视图不存在,则内容视图不会旋转

我该如何解决这个问题?我正在考虑我可以在viewWillAppear中设置的东西,但是试图强制设置interfaceOrientation不会像readonly那样工作。

由于

2 个答案:

答案 0 :(得分:1)

在根视图控制器上的[self setAutoResizesSubviews:YES]方法中尝试viewDidLoad:

编辑: 我假设您已经拥有它,但在Interface Builder中,您的视图是否设置为自动调整大小?当您通过点击模拟界面右上角的小箭头测试旋转时,是否所有内容都正确调整大小?此外,它可能类似于人们对标签栏视图自动旋转的问题。您看过this question还是this one

最后,如果这些都不起作用,您可以覆盖根视图控制器中的layoutSubviews并手动调整包含的视图大小。

答案 1 :(得分:0)

似乎没什么用。当设备处于横向模式且所有内容也处于横向模式时,让当前导航控制器弹出当前视图并推送新视图始终将新视图和整个屏幕内容放在纵向中。