2012-01-02 164 views
2

我有一個UIScrollView故事板,它包含兩個UILabels,一個UIImageView和一個UITextView。 UIImageView和UITextView的內容是動態的,它們的高度也是動態的。UIScrollView:處理動態內容?

目前我的動態文本後這樣做我的UITextView的大小viewDidLoad調整內插:

CGRect frame = self.textView.frame; 
frame.size.height = self.textView.contentSize.height; 
self.textView.frame = frame; 

這是改變其高度的方式?

我的下一個問題是設置UIScrollView的內容大小,以激活滾動。有沒有一種明智的方法來獲取其所有內容的高度,還是必須計算每個元素的高度並將其總和設置爲UIScrollView的內容大小?

回答

4

如果您的對象之間沒有空間,您可以在scrollView.subviews中創建一個for循環,並將所有高度加起來設置爲contentSize。

因爲你可能並沒有把所有的東西都緊緊地綁在一起,所以你可能通過獲得最底層的對象並將它加起來frame.origin.y和frame.size.height(也許你想有一些額外的空間在這裏,但這取決於你),這會給你你的contentSize.height讓所有的東西都在那裏。

+0

謝謝。使用底部元素做了訣竅。 – dhrm 2012-01-02 14:38:37