2012-11-20 75 views
0

我爲iPhone和iPad創建了一個通用應用程序。在這個應用程序中,iPhone是navigation類型,iPad是tab bar類型。 iPhone支持橫向和縱向,iPad應用程序僅支持橫向。ipad ios 5.1接口方向問題

在iPad中,我在登錄窗口(當前模型視圖)後顯示TabBarController,當我第一次運行iPad應用程序時,它總是以縱向模式運行。即使我將方向模式設置爲橫向,也應該自動旋轉橫向。

所以,請任何人都可以告訴我我錯在哪裏,或者我如何在橫向模式下強制顯示視圖。

回答

1

我強迫改變使用下面的代碼的方向。和它的作品對我罰款:

if ([[UIDevice currentDevice] respondsToSelector:@selector (setOrientation:)]) { 
    SEL selector = NSSelectorFromString (@" setOrientation:"); 
    NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[UIDevice instanceMethodSignatureForSelector:selector]]; 
    [invocation setSelector:selector]; 
    [invocation setTarget:[UIDevice currentDevice]]; 
    int Val = UIInterfaceOrientationLandscapeRight; 
    [invocation setArgument:& val atIndex:2]; 
    [invocation invoke]; 
} 

感謝

+0

這是安全的審查指南?這是私人API – srgtuszy

+0

是的。它是安全的。我用我的應用程序和它的批准。 thx –

+0

不過,這是一個私人API,有可能在一天內消失。最好使用適當的'CGAffineTransform'來查看和子視圖並更改狀態欄方向。 – srgtuszy

0

只需添加下面的代碼在你的applicationdelegate.m文件

self.window.rootViewController = self.navController; 

and also remove [self.window addSubview:self.navController.view]; 

this will definitely working.. 
+0

已經這樣做了。在ipad的情況下:self.window.rootViewController = self.tabBarController; 和iphone self.window.rootViewController = self.navigationController; –

+0

也試圖爲iPad –

+0

應用程序是通用的。 iphone中的navigationcontroller和ipad中的tabbarcontroller。而它的不定向問題在ipad上面的東西之後沒有解決。 –