2011-01-23 88 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。它应该足够大:)