automaticallyAdjustsScrollViewInsets

最近在寫項目的其中一個page,但是發現,autolayout都跟其他所有page相同,但是顯示出來的效果不同:
webview上邊被navigationBar遮擋住了

通過xcode的 Debug View Hierarchy 看到,正常的page:
UIWebView 占滿全屏,灰色
_UIWebViewScrollView 占滿全屏,透明
UIWebBrowserView 未全屏,實際顯示web頁面

如下圖:
UIWebView:

uiwebview.png

_UIWebViewScrollView:

_UIWebViewScrollView.png

UIWebBrowserView:


UIWebBrowserView.png

而出錯的page,UIWebBrowserView 依然占滿全屏

于是google之,發現 automaticallyAdjustsScrollViewInsets

果然發現只有這個不正常的page,設置了automaticallyAdjustsScrollViewInsets=false,而其它page都沒有設置(默認是true)

那么來了解一下automaticallyAdjustsScrollViewInsets是做什么用的?
當automaticallyAdjustsScrollViewInsets = true時,如果view中存在唯一一個UIScrollView或者其子類view,那么它會自動設置相應的內邊距,這樣可以讓view占滿整個屏幕,又不會被navigation bar遮擋。這正是問題所在。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容