我发布了一款应用,由于某些原因,只有部分人在应用中遇到问题。即它在纵向模式下打开,并且从此处无法旋转,因为应用程序设置为仅允许在LandscapeLeft和LandscapeRight中。大多数人都没有这个问题,但我最近通过我们的支持页面收到了一些投诉。
有问题的人似乎是iOs 5.1和iPad gen 1,这是我的应用程序支持的最低操作系统。
以下是处理轮换的代码:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if(interfaceOrientation == UIInterfaceOrientationLandscapeRight)
{
return YES;
}
else
{
return NO;
}
}
这是.plist
任何建议都会很棒。
答案 0 :(得分:1)
在iOS5中,您必须覆盖shouldAutorotateToInterfaceOrientation:
方法:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// support all interface orientations
return YES;
}
自iOS 6起,此方法已被弃用,您应该使用这些方法:
- (BOOL)shouldAutorotate {
// return whether autorotation is supported
return TRUE;
}
- (NSUInteger)supportedInterfaceOrientations {
// return the mask that represents the supported interface orientations
return UIInterfaceOrientationMaskAll;
}
最后,我会提到这种方法,因为它通常适用:
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
// set the preferred orientation of view controllers presented in full-screen
return UIInterfaceOrientationLandscapeRight;
}