我的申请基于Landscape
。当应用程序在我的设备上运行时,应用程序会立即崩溃。
我选择了这两个字段
UIInterfaceOrientationLandscapeLeft
UIInterfaceOrientationLandscapeRight
我收到此错误:
由于未捕获的异常而终止应用 UIApplicationInvalidInterfaceOrientation,原因:支持 方向与应用程序没有共同的方向,并且 shouldAutorotate返回YES
答案 0 :(得分:2)
向控制器添加 shouldAutorotate 和 supportedInterfaceOrientations 方法。
-(BOOL)shouldAutorotate
{
return YES; //this will auto-rotate the orientation.
}
-(NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskLandscape; // will force the app to load in landscape, you can change it as per your need.
}
答案 1 :(得分:0)
shouldAutorotateToInterfaceOrientation仅返回您想要支持的人
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight));
}
请再检查一下,File's Owner and View
之间的连接,如果视图不会附加到文件的所有者它会崩溃。
答案 2 :(得分:0)
您应该使用UIInterfaceOrientationMaskLandscape而不是UIInterfaceOrientationLandscapeLeft& UIInterfaceOrientationLandscapeRight。在iOS SDK 6.0+中,新的枚举(UIInterfaceOrientationMask)用于返回支持的方向。