最近封裝了一個頂部滑動菜單,用scrollView 寫,寫着寫着發如今運行的時候,菜單老是跑到下面去,即便設置了根視圖的self.automaticallyAdjustsScrollViewInsets = false(取消自動佈局)和scrollView的初始偏移量爲CGPoint(x: 0,y: 0)也無論用,因而上網查閱了大量資料,發現了一個問題。 佈局
在navigationBar,以及statusBar都顯示的狀況下,Navigation的當前VC,他的VC的view的子視圖樹的根部的第一個子視圖,若是是Scrollview的話,這個scrollview的全部子視圖都會被下移64個像素。code
解決方法1it
將全部scrollview的子視圖通通上移64個像素io
解決方法2scroll
使scrollView不是根視圖的第一個子視圖,哪怕你在上面再加一個透明的,高度爲1 的UIView 也好啊方法
let view = UIView.init(frame: CGRect.init(x: 0, y: 0, width: width, height: 1)) view.backgroundColor = UIColor.clear self.view.addSubview(view) self.view.addSubview(scrollview)