我正在开发一款iPhone应用程序,其中有几个nib文件,并且应该仅支持横屏模式。
该应用程序通过其Info.plist文件设置为以横屏模式启动。
我有两个视图控制器:FirstViewController和SecondViewController。
对于每个视图控制器,我都有一个nib文件,其中视图是横向的。这两个视图控制器都添加到我的MainView nib中作为输出口,它们的视图是惰性初始化的。
当应用程序加载时,第一个视图按预期以横向显示。但是,当我切换到第二个视图时,设备(或模拟器)仍处于横向状态,但视图被旋转,就好像设备处于纵向模式下,破坏了我的界面。
在两个UIViewController类中,我都有以下代码:
该应用程序通过其Info.plist文件设置为以横屏模式启动。
我有两个视图控制器:FirstViewController和SecondViewController。
对于每个视图控制器,我都有一个nib文件,其中视图是横向的。这两个视图控制器都添加到我的MainView nib中作为输出口,它们的视图是惰性初始化的。
当应用程序加载时,第一个视图按预期以横向显示。但是,当我切换到第二个视图时,设备(或模拟器)仍处于横向状态,但视图被旋转,就好像设备处于纵向模式下,破坏了我的界面。
在两个UIViewController类中,我都有以下代码:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return interfaceOrientation == UIInterfaceOrientationLandscapeRight;
}
要切换视图,在我的应用程序委托中,我正在执行以下操作:
[viewController.view removeFromSuperview];
[window addSubview:secondViewController.view];
其中viewController
和secondViewController
是两个输出口,用于连接视图控制器。
这是第二个视图在IB中的样子: alt text http://img27.imageshack.us/img27/4898/picture1ni.png
这是它在模拟器中的样子: alt text http://img402.imageshack.us/img402/4866/picture2wt.png
为什么第二个视图以横向显示但界面却旋转了呢?
我不想处理变换属性,因为那似乎太过复杂。