是的,我对此进行了很多研究并且遇到了障碍。
我正在开发一个具有多个视图控制器的应用程序。如果您愿意,我有“主页”,所有其他视图都可以从(这个 ViewController.m)访问。然后,我还将 UINavigationController.m 附加到 ViewController.m 以允许完整的导航栏等。
我的问题是我希望所有视图都以纵向显示,除了一个视图,我只想要横向显示。在我的应用程序选项中,我已将其设置为启用所有方向,然后我读到您应该覆盖根视图控制器中的主要方向(我假设它是导航控制器?),所以我添加:
- (BOOL)shouldAutorotate {
return YES;
}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
这会覆盖所有内容,并且只有肖像有效。然后我尝试添加:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
- (NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskLandscape;
}
对于我只想在风景中拥有但它无法在模拟器中工作的视图。
谁能给我一个解决方案?:/
(如果可能,我希望支持 iOS5 和 iOS6)
[编辑]
我应该补充一点,我没有以任何方式编辑 AppDelegate。