Swift-ScrollView自動下移的問題解決

本文屬個人筆記,不做詳解,僅供參考!

當導航欄存在時,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 功能關閉即可,有兩種方法修改。

  • 在代碼中設置
    self.automaticallyAdjustsScrollViewInsets = false
  • 在 storyboard 中設置
storyboard設置.png

參考文章:航歌

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容