UITabBarController 내에 UINavigationController가 있습니다. 나는 사회가 succes에없는 아이폰 OS 6의 자동 회전에 대한 제안 모든 노력을, 마지막으로 나는 (함수가 호출받을 않았지만)이 oriantaion에 변경을하지 않았다 UINavigationController가에 카테고리UITabBarController 내의 UINavigationController는 iOS 6에서 회전하지 않습니다.
을 만들하기로 결정했습니다그때 나는이 같은 UITabBarController가에 대한 카테고리를 만들었습니다
#import "UITabBarController+ios6Rotate.h"
@implementation UITabBarController (ios6Rotate)
-(BOOL)shouldAutorotate
{
return YES;
}
-(NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationPortraitUpsideDown;;
}
@end
이있어 :
Terminating app due to uncaught exception 'UIApplicationInvalidInterfaceOrientation', reason: 'preferredInterfaceOrientationForPresentation must return a supported interface orientation!
,536을
하지만 내 모든 방향이 지원됩니다!
-(NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortraitUpsideDown;
}
을 그리고 내 응용 프로그램을 상하 반전 시작했지만 여전히 회전하지 않습니다 : 흠
그때 나는이에 코드를 변경했습니다. 나는 무슨 일이 일어나고 있는지 이해하지 못합니다. 이 시점에서 나는 어떤 종류의 회전을 ios6에서보고 싶습니다. 어느 쪽이 좋을지는 아무것도 신경 쓰지 않습니다.
예 rootViewController는 iOS6을 사용하는 방법입니다. 콘솔의 경고에서 알았어 야합니다. – nsgulliver
고마워요! - 이전 방법은 'setRootViewController'선택기가 아직없는 iOS 3.1과의 이전 버전 호환성을위한 것일 수 있습니다. – TinkerTank