最近在寫項(xiàng)目的其中一個(gè)page涌庭,但是發(fā)現(xiàn)叁怪,autolayout都跟其他所有page相同乏沸,但是顯示出來的效果不同:
webview上邊被navigationBar遮擋住了
通過xcode的 Debug View Hierarchy 看到作瞄,正常的page:
UIWebView 占滿全屏某弦,灰色
_UIWebViewScrollView 占滿全屏途凫,透明
UIWebBrowserView 未全屏垢夹,實(shí)際顯示web頁(yè)面
如下圖:
UIWebView:
_UIWebViewScrollView:
UIWebBrowserView:
而出錯(cuò)的page,UIWebBrowserView 依然占滿全屏
于是google之维费,發(fā)現(xiàn) automaticallyAdjustsScrollViewInsets
果然發(fā)現(xiàn)只有這個(gè)不正常的page果元,設(shè)置了automaticallyAdjustsScrollViewInsets=false促王,而其它page都沒有設(shè)置(默認(rèn)是true)
那么來了解一下automaticallyAdjustsScrollViewInsets是做什么用的?
當(dāng)automaticallyAdjustsScrollViewInsets = true時(shí)而晒,如果view中存在唯一一個(gè)UIScrollView或者其子類view蝇狼,那么它會(huì)自動(dòng)設(shè)置相應(yīng)的內(nèi)邊距,這樣可以讓view占滿整個(gè)屏幕倡怎,又不會(huì)被navigation bar遮擋迅耘。這正是問題所在。