2015-07-05 83 views
0

我有UIViewController。它有一個UIView,其中UIScrollView內有三個對象(UILabel,UIImageView,UITextView)。當我嘗試垂直滾動時,沒有任何反應我使用自動佈局。在沒有UIView之前,我在UIScrollView裏面做過,但底部有一個空的空間。UIView不在UIScrollView裏面垂直滾動

@IBOutlet weak var scrollView: UIScrollView! { 
    didSet { 
     scrollView.delegate = self 
     scrollView.scrollEnabled = true 
     self.scrollView.frame.size = scrollView.contentSize //12 
    } 
} 

enter image description here enter image description here

+0

scrollView.contentSize是什麼值...爲什麼它應該垂直滾動? – jdl

+0

@jdi如果我使'self.scrollView.contentSize = CGSizeMake(self.viewV.frame.width,self.view.frame.height)'我得到錯誤致命錯誤:意外地發現零,同時展開一個可選值 – Alexander

+0

嘗試設置值自己看:scrollView.frame.size.height = 800.它是否擴展它? – jdl

回答

1

如果您使用自動佈局,則無需設置滾動視圖的框架,讓您的視圖成爲滾動視圖高度約束的子視圖,例如800並設置滾動視圖和外部視圖寬度約束來匹配每個設備的寬度並使用自動佈局設置滾動視圖框架,這將開始滾動。

請參閱本link進一步的細節

+0

當我像在這個鏈接中寫的那樣,我可以很好地在水平滾動但不垂直。 – Alexander

+0

對不起。這是我的錯誤。我修復了它,它對我有用。謝謝您的回答! – Alexander

+1

很高興聽到那..cheers :-) – suhit

1

的問題是,你設置滾動視圖的幀大小等於滾動視圖的內容大小。滾動視圖只會在其內容大於其框架時滾動。相反,請將滾動視圖的框架大小設置爲與容器視圖的大小相匹配,並將內容大小的高度設置爲文本視圖的底部。

0

當我們使用的是帶有自動佈局滾動視圖它有點confuting但你看到滾動視圖的行爲有關,那麼你會很容易得到的想法。

對於四邊的scrollview設置約束爲0。 然後查看您查看的大小(您在滾動視圖中添加的大小)並將其設置爲滾動查看內容大小。用於視圖的 設置與滾動視圖寬度相等的權重約束。

我希望它能幫助你。