本文屬個人筆記碾褂,不做詳解放可,僅供參考卖氨!
當導航欄存在時,ScrolloView的視圖會自動下移残炮。
automaticallyAdjustsScrollViewInsets屬性介紹
- automaticallyAdjustsScrollViewInsets 是 iOS7 后新增的屬性韭赘,其默認值是 true
- 當其為 true 時∈凭停控制器會根據(jù)所在界面的 statusbar泉瞻、navigationbar脉漏、tabbar 的高度,自動調(diào)整 scrollview 的 inset袖牙,防止其被導航欄等遮擋
- 這里的 scrollview 包括 UIScrollView侧巨,以及繼承自 UIScrollView 的 UITableView、UICollectionView鞭达、UITextView 等
- 要注意的是司忱,如果有多個 scrollview,控制器只會自動調(diào)整其下第一個 scrollview 的 inset 屬性
automaticallyAdjustsScrollViewInsets為true造成的問題
雖然自動調(diào)整 **inset **很方便畴蹭,但有時也會造成一些問題坦仍。
- 比如我們添加一個 textview,由于自動調(diào)整叨襟,textview 上面會空出一大塊區(qū)域
- 或者我們布局的時候就已經(jīng)把導航欄考慮在內(nèi)繁扎,即起始位置從 (0,64) 開始。但由于內(nèi)邊距的自動調(diào)成糊闽,會造成內(nèi)容偏移
解決辦法
將 scrollview 自動調(diào)整 inset 功能關(guān)閉即可锻离,有兩種方法修改。
- 在代碼中設(shè)置
self.automaticallyAdjustsScrollViewInsets = false
- 在 storyboard 中設(shè)置
storyboard設(shè)置.png