項目需求,app中大部分頁面不支持旋轉,僅指定的幾個頁面提供旋轉支持:app
經過查詢相關資料,可經過如下方法實現spa
- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window 這個方法是全局控制,頁面旋轉的。get
如須要全部頁面支持旋轉則,直接返回UIInterfaceOrientationMaskAll;io
- (BOOL)shouldAutorotate 控制視圖控制器是否支持旋轉分頁
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation 頁面加載時優先顯示的方向bug
- (UIInterfaceOrientationMask)supportedInterfaceOrientations 該視圖控制器支持全部旋轉的方向方法
這三個方法組合,能夠防止「從指定的視圖控制器(能夠旋轉的視圖控制器)返回時,致使返回的上一個頁面會存在旋轉的bug」項目
以上功能的實現依賴於,在target中general欄目下已解鎖多個方向(須要支持的方向)查詢