2015-11-04 90 views
2

這超出了令人沮喪的地步。我有與UINavigationController的(因而UINavigationBar的)推我UIScrollView的內容倒在頂部的問題,類似的問題在這裏找到:IOS9:UINavigationController中的UIScrollView偏移量

iOS 7 -- navigationController is setting the contentInset and ContentOffset of my UIScrollView

IOS7 : UIScrollView offset in UINavigationController

我都嘗試建議的解決方法在我的視圖控制器的viewDidLoad()方法中設置self.automaticallyAdjustsScrollViewInsets = true,並在Interface Builder中取消選擇​​。這兩個解決方案都刪除了頂部的邊界,但正如其他一些人已經注意到的,我無法再滾動。

的UIScrollView中和內容查看填充整個視圖控制器。我的內容視圖(在UIScrollView內)包含標籤,分段和底部的UITextView。它與Content View中的內容有關嗎?

如果需要,我可以附上照片。使用的XCode 7,斯威夫特2,和iOS 9

+0

我解決了我的問題。在自動佈局中,我沒有設置內容視圖的高度限制。我將內容視圖的底部固定到包含UIScrollView的視圖控制器。我刪除了該引腳並明確設置了高度。它現在有效。 –

回答

2

我解決了我的問題。在自動佈局中,我沒有設置內容視圖的高度限制。 以前,我將內容視圖的底部固定到包含UIScrollView的視圖控制器。 我刪除了該引腳並明確設置了高度。它現在有效。

0

可能會或可能不適合你,但如果你有一個導航控制器,你不需要它爲半透明,你可以沿着線做一些self.navigationController.navigationBar.translucent = NO;

這可能有助於您的奇數偏移。

+0

我給了它一個鏡頭,但無濟於事。如果我將該屬性設置爲false,則無論「Adjust Scroll View Insets」設置爲什麼,仍然會將內容向下推送。 –

1

我剛碰到同樣的問題。我有一個「關於」視圖與一堆包含靜態文本的標籤。我有一個視圖控制器內的UIScrollView,它被推下來。我有一個標籤固定在屏幕的底部,當沒有必要這樣做時,屏幕底部會被拉出頁面。

我有以下視圖層次結構:

  • 視圖控制器
    • 查看
    • 滾動查看
      • 內容的瀏覽(UIView的)
      • 標籤
      • 標籤

Content View被釘到的Scroll View邊界,但寬度和高度等於有約束View

我通過添加另一個UIViewView孩子解決了這個。我的層次,現在看起來是這樣的:

  • 視圖控制器
    • 查看
    • 內部景觀(的UIView)
    • 滾動查看
      • 內容視圖(UIView的)
      • 標籤
      • 標籤

我設置Content View高度約束等於高度Inner View。這解決了我的問題,一切開始正確顯示。 Inner View被固定到View的邊界。

注意:在層次結構中,Label應該是Content View的子項。在預覽中,它顯示Markdown列表不能深入。