2015-12-06 58 views
1

所以,我有以下觀點等級時,則設置爲非零對容器視圖的約束(忽略倒數第二個,它是我的問題的一個黑客半修正):UIScrollView的contentInset使用自動佈局

enter image description here

我有狀態欄,導航欄和標籤欄可見。

問題是,當我設置一個斷點來檢查scrollView的contentInset時,它顯示頂部64和底部49,左側和右側爲零。 沒有辦法在IB中設置contentInset,我嘗試在IBAction中將它設置爲UIEdgeInsetZeio,但那也沒有解決它。這是通過添加我的contentView上方和下方的空間搞砸我的scrollview,我該如何解決這個問題?

回答

5

默認情況下,視圖控制器將視圖擴展到頂部導航欄下方,以便您的內容在半透明導航欄下模糊。這由edgesForExtendLayout控制,通過「延伸邊」設置在Storyboard中進行管理。

默認情況下,滾動視圖會自動調整其內容嵌入,以便內容顯示在頂部佈局指南下方。這由automaticallyAdjustsScrollViewInsets控制,這也在Storyboard中管理。

enter image description here

你所做的就是限制你的滾動視圖的頂部,頂部佈局引導,而不是它的父的頂部。通過這樣做,你手動將它抵消64點。但是,滾動視圖仍然會自動將其內容插入64點,這就是爲什麼您在滾動視圖上方和下方看到更多空間的原因。

要麼將​​您的滾動視圖限制爲其超級視圖(使其內容在頂部/底部酒吧下滾動),要麼禁用視圖控制器自動調整滾動視圖插入。

相關問題