确认!我终于在 iOS 5 中解决了我的标签栏旋转问题,但 iOS 6 和 xcode 似乎有问题......这就是我所拥有的:
目标应用摘要包括:支持的界面方向 - 纵向、左侧横向、右侧横向
App 中的每个 Single View 都有以下方法:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
return ((interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown) &&
(interfaceOrientation != UIInterfaceOrientationLandscapeLeft) &&
(interfaceOrientation != UIInterfaceOrientationLandscapeRight));
} else {
return YES;
}
}
- (BOOL)shouldAutorotate
{
NSLog(@"am I called1?");
return NO;
}
-(NSUInteger)supportedInterfaceOrientations{
NSLog(@"am I called?");
return UIInterfaceOrientationMaskPortrait;
}
在不属于选项卡栏的视图中,旋转被阻止。在标签栏的所有视图(有 5 个)中,应用程序从不调用 ShouldAutorotate 并因此旋转。似乎supportedInterfaceOrientations 在视图加载时被调用一次,但在我在视图之间切换时不会出现,因为我得到了NSLog,但它似乎忽略了MaskPortrait 设置。
我必须在目标中启用景观,因为我有一个需要旋转的视频播放器视图(它这样做,很好)
这是 iOS 6 中的标签栏错误吗?我是否需要以不同的方式禁用视图的旋转?shouldautorotatetointerfaceorientation 在 ios 5 中效果很好
我已经有一段时间了
谢谢,扎克