2015-04-06 64 views
0

我正在構建一個目前只支持肖像模式的ios應用程序。我只想轉換成橫向模式。但是當我試圖改變我的觀點時,它只堅持肖像模式。我也改變了我的筆尖文件的方向。但它沒有奏效。您能否告訴我哪些約束會阻止它以縱向模式查看。任何人都建議我強制轉換成風景模式。Potrait風景

回答

0

該應用程序的Info.plist文件包含應用程序將響應的方向的應用程序默認設置。您可以雙擊它在Xcode中進行編輯,然後輕鬆設置鍵,或者您可以直接編輯plist源來執行此操作。

Information Property List Key Reference

...例如,要指定一個人像發射方向爲iPhone 和iPod touch設備和 iPad的一道風景線,右方向推出,應指定相應的鍵在你的Info.plist 文件:

<key>UIInterfaceOrientation</key> 
<string>UIInterfaceOrientationPortrait</string> 
<key>UIInterfaceOrientation~ipad</key> 
<string>UIInterfaceOrientationLandscapeRight</string> 

還有每個視圖控制器方法,你可以重寫,以確定該標準桿特定視圖將定位到設備方向。

UIViewController文檔:

處理視圖旋轉

在iOS系統中8,所有循環相關的方法是 棄用。相反,旋轉視爲視圖控制器視圖大小的變化,因此使用 viewWillTransitionToSize:withTransitionCoordinator:方法進行報告。當界面方向改變時,UIKit在窗口的 根視圖控制器上調用此方法。該視圖控制器然後通知其子 視圖控制器,在整個視圖 控制器層次結構中傳播該消息。

在iOS 6和iOS 7中,您的應用支持在應用的Info.plist文件中定義的界面方向 。視圖控制器可以覆蓋 方法以限制支持的方向的列表 支持的方向。通常,系統在窗口的根視圖控制器上僅調用此方法 或者呈現視圖控制器 以填充整個屏幕;子視圖控制器使用其父視圖 控制器爲其提供的窗口部分,並且不再直接參與關於支持哪些旋轉的決定。應用程序的方向 蒙版和視圖控制器的方向蒙版的交集用於確定視圖控制器可以旋轉到哪個方向。

您可以覆蓋preferredInterfaceOrientationForPresentation爲 視圖控制器,該視圖控制器旨在以全屏方式呈現在 的特定方向中。

+0

我試試我的朋友。但它不起作用。我嘗試與supportedInterfaceOrientations方法,但仍然是相同的。我改變了plist的價值。那麼還有其他什麼。我重新設計了橫向模式下的視圖,但它不以橫向模式顯示。你能否告訴我任何解決方法。 – Nik

+0

您是否在Interface Builder中使用AutoLayout,並且是否設置了約束?在您可以嘗試的特定方向中,您可以設置一些稱爲尺寸等級約束的約束條件。還可以考慮重寫'willAnimateRotationToInterfaceOrientation'或'viewWillTransitionToSize:withTransitionCoordinator'來查看它是否被調用。如果不是,那麼這有助於指出更高層面的問題。 – clearlight

0

我只是忘了把一行代碼放在我的AppDelegate實現中。我只是把這一行代碼,現在它完美無瑕。

代碼是self.window.rootviewController = self.ViewController