尽管调用了shouldAutorotateToInterfaceOrientation,屏幕方向仍未改变

时间:2011-10-05 17:07:37

标签: iphone objective-c screen-orientation uiinterfaceorientation

我想在我的应用中添加更改各种视图的屏幕方向的功能。阅读了各种教程之后,我在每个视图控制器中实现了shouldAutorotateToInterfaceOrientation方法,并让每个人都返回yes,并将调用记录到控制台,如下所示:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    NSLog(@"shouldAutorotateToInterfaceOrientation called");
    return YES;
}

当我在模拟器上运行并更改方向时,我会收到日志消息,但屏幕上没有任何内容发生变化。我试图找到这种情况会如何发生,但我看到的所有地方都说问题与未被调用的方法有关,即使它是在我的情况下。有什么想法吗?

由于

2 个答案:

答案 0 :(得分:2)

我需要知道,在您的代码中,您通过代码或.xib使用每个视图。

此外,您还需要为每个组件设置自动调整属性...

答案 1 :(得分:0)

解决它:在代码中初始化了一个直接的UIViewController对象,并将其更改为我自己的简单基类解决了这个问题。谢谢你的建议!