簡體   English   中英

iOS導航欄更改高度風景與肖像

[英]iOS navigation bar changing height landscape vs portrait

有沒有辦法阻止iOS應用程序中的默認UINavigationController在設備從縱向旋轉到橫向時自動更改高度?

在下面的屏幕截圖中,導航欄將高度改變10或15像素,這導致右對齊uiview(黑條)在橫向模式下延伸到導航欄的邊界之外。

我希望導航欄保持恆定的高度。

肖像

肖像

景觀

景觀

如果您使用UINavigationBar中的UINavigationController ,則無法執行此操作。

另一個解決方案 - 隱藏標准導航欄並在每個UIViewController中顯示您的自定義。 之后,您可以使用此帖子中的解決方案:

有沒有辦法在不使用UINavigationController的情況下更改Storyboard中UINavigationBar的高度?

一種方法是在視圖控制器中更改頂視圖的約束。

-(void)viewDidLayoutSubviews
{
if (_topConstraintForHandlingNavBarHeight) {
    _topConstraintForHandlingNavBarHeight.constant =  self.navigationController.navigationBar.bounds.size.height;
    [self.view layoutIfNeeded];

}
}

這適用於所有視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM