如何防止我的应用在导航期间切换回纵向模式?

时间:2009-02-13 10:33:12

标签: cocoa-touch

当用户移动iPhone时,我的视图在纵向和横向模式之间适当切换,使用以下代码没有问题:

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait || 
        interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
        interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}

问题是,如果他们在旋转到横向后按下将其带到另一个屏幕的按钮,则下一个屏幕将返回到纵向模式,状态栏将正确保持横向模式。如何在onviewload中检测iPhone当前所处的模式,以便我可以运行更改以适当地更改视图方向?

1 个答案:

答案 0 :(得分:1)

在设备方向更改之前,您的视图控制器会收到此消息:

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration

toInterfaceOrientation是旋转后应用程序用户界面方向的状态。