1. 程式人生 > >iOS 12.1系統tabbar偏移問題

iOS 12.1系統tabbar偏移問題

更新到12.1系統後發現在push進控制器後再返回,底部tabbar出現偏移錯位問題。

1.處理的方法 :

在Appdelegate裡面,設定全域性的Tabbar樣式

[[UITabBar appearance] setTranslucent:NO];

 

設定了tabbar的 translucent 屬性為NO以後,需要注意一下自己的頁面佈局,底部從0(tabbar頂部)開始了,而不是從tabbar底部開始。

2.造成原因

這個問題是 iOS 12.1 Beta 2 引入的問題,只要 UITabBar 是磨砂的,並且 push viewController 時 hidesBottomBarWhenPushed = YES 則手勢返回的時候就會觸發。

出現這個現象的直接原因是 tabBar 內的按鈕 UITabBarButton 被設定了錯誤的 frame,frame.size 變為 (0, 0) 導致的。如果12.1正式版Apple修復了這個bug可以移除調這段程式碼(來源於QMUIKit的處理方式),如果12.1正式版本Apple Fix了這個bug,可以移除掉這個bug

 

 

參考文章:https://www.jianshu.com/p/fb86dc70ba6c