2011-02-03 65 views
4

我有一個UIScrollView其中有一個子視圖。如果我在創建之後立即設置UIScrollViewcontentSize,則所有事情都按我的預期工作,並且會滾動。UIScrollView更新contentSize導致滾動

挑戰是UIScrollView內的視圖是動態調整大小的。寬度是固定的,但在設置滾動視圖時高度未知。

當我在內部視圖做了[scrollView setContentSize:CGRectMake(...)]之後,scrollview會更新爲正確的大小和滾動效果。所以基本的滾動工作正常。

但是,主要的問題是,當我在稍後點時,UIScrollView決定向下滾動(與動畫)到滾動視圖的結尾,這不是我想要的,我希望滾動停留在頂部,並讓scrollview中的內容變大或變小,而不改變明顯的滾動位置。

我錯過了什麼?

+0

我當然希望你沒有傳遞到的CGRect`-setContentSize:`。 – 2011-02-03 20:35:44

+0

@凱文感謝您的支持。應該是CGSizeMake(這實際上是我在代碼中所擁有的)。 – Kekoa 2011-02-03 22:11:40

回答

6

當您調用setContentSize時,爲什麼不調用[scrollview setContentOffset:CGPointMake(0,0)];

0

強制UIScrollView僅滾動例如水平,我總是爲contentSize設置非滾動值設置爲0,使用:

CGSizeMake(contentSize.width, 0).