我们的应用仅支持横向模式,需要支持iOS5.1& 6.0& 7.0。 Bynow,我们设置了rootviewcontroller和 BaseSdk:7.0 DeploymentTarget:5.1
我们的应用程序在iOS 5和ios 6中运行良好。 但是在iOS7中,当存在alertview并且用户旋转到肖像时,alertview也会旋转到potrait,这在iOS5& 6。 此外,一旦alertview进入肖像,它就不会旋转到横向。
注意:我的ViewController的方向很好。它始终只支持Landscape。
答案 0 :(得分:2)
我通过实现supportedInterfaceOrientations方法解决了这个问题: 在我只使用
之前- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (landscapeOnly) {
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
else {
return YES;
}
}
现在我已经实现了supportedInterfaceOrientations方法。因为当出现警报视图时,会自动调用supportedInterfaceOrientations。
-(NSUInteger)supportedInterfaceOrientations{
if (landscapeOnly) {
return ((1 << UIInterfaceOrientationLandscapeLeft) | (1 << UIInterfaceOrientationLandscapeRight));
}
else{
return ((1 << UIInterfaceOrientationLandscapeLeft) | (1 << UIInterfaceOrientationLandscapeRight) | (1 << UIInterfaceOrientationPortrait) | (1 << UIInterfaceOrientationPortraitUpsideDown));
}
}
(1&lt;&lt; UIInterfaceOrientationLandscapeLeft)用于UIInterfaceOrientationMaskLandscape
答案 1 :(得分:0)