[英]iOS app can support landscape orientation for only one tabBar item?
我正在使用Swift開發iOS應用程序。 我的應用程序有很多視圖,所有視圖都有UITabBar作為根視圖。 我只需要為一個標簽欄項目支持橫向顯示。
我怎樣才能做到這一點?
我在這里基於此答案有一個可行的解決方案: https : //stackoverflow.com/a/24928474/1359306
Target Settings > General > Deployment Info
中選中了支持的方向。 將此代碼(從鏈接的答案中獲取)添加到您的應用程序委托中:
internal var shouldRotate = false func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> UIInterfaceOrientationMask { if shouldRotate { return .AllButUpsideDown } else { return .Portrait } }
然后在僅橫向視圖控制器中,將以下代碼放入viewDidAppear
(NOT viewDidLoad!)中以啟用縱向視圖和橫向視圖:
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate appDelegate.shouldRotate = true
而viewWillDisappear
的相反出現再次禁用景觀。
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate appDelegate.shouldRotate = false
當應用程序處於橫向時,我也隱藏了我的標簽和狀態欄,這比單擊標簽並自動旋轉屏幕感覺要好得多。
就我而言,有幾件事我不必擔心。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.