2012-10-03 89 views
0

我的應用程序的大部分不支持旋轉。在支持的方向上,我只選擇了portait。在該應用程序使用UIViewController子類我有這樣的:ViewController不在iOS6上旋轉

-(BOOL)shouldAutorotate { 
    return NO; 
} 

-(NSUInteger)supportedInterfaceOrientations { 
    NSLog(@"supported?"); 
    return UIInterfaceOrientationMaskPortrait; 
} 

-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { 

    NSLog(@"preferred"); 
    return UIInterfaceOrientationPortrait; 
} 

在UIViewController子類是不支持的方向,我有這樣的:

-(BOOL)shouldAutorotate { 
    return YES; 
} 

-(NSUInteger)supportedInterfaceOrientations { 
    NSLog(@"supported?"); 
    return UIInterfaceOrientationMaskAll; 
} 

-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { 

    NSLog(@"preferred"); 
    return UIInterfaceOrientationPortrait; 
} 

我的應用程序不會對任何視圖旋轉。然而,包括這個。如何使它在這裏旋轉,因爲我想要它?

+0

難道你在你的Info.plist中添加所有的方向到你支持的方向? – DrummerB

+0

不,我只將portait選爲受支持的方向。如果我啓用橫向它只是旋轉到每個視圖控制器上的橫向。 – Andrew

+1

你有導航控制器嗎? – rooster117

回答

1

如果您使用的是導航控制器,確保你做這在App代表:

self.window.rootViewController = self.navigationController;

有關其他參考資料,檢查所以這個問題:

Rotation behaving differently on iOS6

+0

這應該可以解決您的問題。有一天,我花了幾個小時試圖弄清楚這一點,很高興最終我能夠在我的應用程序代理上通過這一行解決它。 – atbebtg