我有一個應用程序,支持所有的方向,但在某些情況下,我想暫時限制它只有肖像。它不是視圖控制器的混合,只需要使用肖像和可以使用任何方向的視圖控制器,相反,當用戶單擊屏幕上的按鈕而視圖控制器保持不變時,我想禁用方向更改。暫時限制應用程序到特定的方向
在尋找方法來限制UIViewController
的UI方向時,彈出的方法是supportedInterfaceOrientations()
和preferredInterfaceOrientationForPresentation()
。無論是對我有點不工作:風景被
supportedInterfaceOrientations()
只運行一次的時候,所以,即使我做它的返回值的條件,它並沒有條件改變後運行。- 我的視圖控制器在導航堆棧中呈現,而非模態,所以
preferredInterfaceOrientationForPresentation()
根本不運行。
有什麼辦法可以達到我要找的效果嗎?
當你說'supportedInterfaceOrientations()'只在加載視圖時才運行,你是什麼意思?你能詳細說明這一點嗎? –
當viewController初始化並加載時,該方法運行。然後用戶點擊一個按鈕並設置一個標誌來限制方向。然後,如果我旋轉設備,它會旋轉,我可以在調試器中看到'supportedInterfaceOrientations()'在第一次之後從未再次運行。我是否可以強制操作系統通過再次調用方法來刷新支持的方向上的數據? – SaltyNuts