2011-01-23 137 views
2

我不太確定爲什麼這不起作用,希望你能幫我找到缺失的部分。我有一個UIScrollView啓用分頁功能。我正在使用它來通過教程進行橫向捲動。我有一個按鈕,點擊時應該滾動用戶回到教程的開始。我最初嘗試使用滾動視圖的框架作爲滾動的矩形,因爲CGRect應該代表第一頁。我嘗試了幾種不同的CGRects但沒有成功。UIScrollView scrollRectToVisible沒有做任何事情

- (IBAction) touchedButtonReturnToBeginning:(id)sender { 
    // I've tried several CGRect's, none of which cause the UIScrollView to move. 
    // CGRect beginning = self.containerScrollView.frame 
    // CGRect beginning = self.containerScrollView.bounds; 
    CGRect beginning = CGRectMake(0, 44, 1, 1); 
    [self.containerScrollView scrollRectToVisible:beginning animated:YES]; 
} 

我已經驗證了self.containerScrollView在我xib掛接還有touchedButtonReturnToBeginning動作連接到我的按鈕。我已經使用我的調試器來遍歷這個方法,所以我已經驗證它正在調用。所有的變量都被適當的設置,但是當我打電話給scrollRectToVisible時,滾動視圖就不會做任何事情。

任何想法?

+0

爲了澄清,當你觸摸按鈕滾動,「** touchedButtonReturnToBeginning **」**被調用,是否正確? – aqua 2011-01-23 05:52:30

+0

是的,我已經在方法中放了一個NSLog,並且我使用調試器來逐步完成,我發現它正在發生。 – 2011-01-23 18:53:50

+0

你是否檢查過你的`UIScrollView`的contentSize屬性? 當這個問題碰到我時,通常是由滾動視圖中的無效內容(例如`{0,0}`)引起的。 – Jay 2017-03-29 09:22:36

回答

11

我不知道爲什麼不行,但你試過[self.containerScrollView setContentOffset:CGPointZero animated:YES]

5

若要使scrollRectToVisible工程檢查您的self.containerScrollView.contentSize。它應該足夠大:)