2011-10-04 46 views
1

我只有一個應用程序委託和視圖控制器在我的應用程序。 該應用程序在縱向和橫向模式下均可使用。 在我的視圖控制器的viewWillAppear中的方法,我發現了設備usisng的方向如下代碼:iPhone - 在第一個視圖控制器視圖中獲取設備方向將出現

UIInterfaceOrientationIsPortrait([[UIDevice currentDevice] orientation]) 

當我運行的應用程序,甚至當我的設備是在肖像,其給出結果作爲景觀第一次。 爲什麼會這樣。我該如何解決這個問題?

回答

5

我曾與currentDevice.orientation一噸的問題,試試這個:

UIDeviceOrientationIsPortrait([[UIApplication sharedApplication] statusBarOrientation]) 
0
UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation; 


if (UIDeviceOrientationIsLandscape(deviceOrientation) 
{ 
    //LandscapeView 
} 
else 
{ 
    //PortraitView 
} 
0

從文檔UIDevice

此屬性的值始終返回0,除非方向通過調用 beginGeneratingDeviceOrientationNotifications啓用了 通知。

如果你看着'orientation'返回的實際值,你會發現它是'UIDeviceOrientationUnknown'。

相關問題