isTranslucent
設(shè)置navigationBar是否半透明,默認(rèn)為
True
。
當(dāng)isTranslucent
為False
時哗脖,添加view的frame默認(rèn)從navigationBar下方開始計算
去除navigationBar下方黑線
navigationBar.shadowImage = UIImage()
automaticallyAdjustsScrollViewInsets裂七、contentInsetAdjustmentBehavior
是否自動設(shè)置scrollView的內(nèi)邊距,默認(rèn)為
True
,為False
時龙誊,添加view的frame默認(rèn)從navigationBar下方開始計算
if #available(iOS 11.0, *) {
tableView.contentInsetAdjustmentBehavior = .never
} else {
automaticallyAdjustsScrollViewInsets = false
}
automaticallyAdjustsScrollViewInsets與edgesForExtendedLayout區(qū)別
edgesForExtendedLayout
設(shè)置的是位置,automaticallyAdjustsScrollViewInsets
設(shè)置的是內(nèi)邊距属瓣。
ticallyAdjustsScrollViewInsets
為True
相當(dāng)于scrollView.contentInset = UIEdgeInsets(top: navigationBar.heigth, left: 0, bottom: 0, right: 0)
extendedLayoutIncludesOpaqueBars
補充當(dāng)navigationBar不透明的時候是否讓scrollView能夠顯示于navigationBar下方载迄。默認(rèn)為False
.
容易出錯的地方:
navigationBar為不透明時,extendedLayoutIncludesOpaqueBars為true時,scrollView將從navigationBar頂點的位置開始布局抡蛙,而不是從navigationBar底部開始护昧。