scrollview不会更改contentOffset

时间:2011-05-03 08:07:22

标签: iphone ios uiscrollview

我有一个大的水平滚动视图,上面有不同的视图。 滚动工作正常,但现在我添加了按钮以进入下一页的上一页。 我认为这个代码可以解决这个问题,因为我已经使用了几次:

-(void)goBack{ 
    CGPoint offset = [self.scrollview contentOffset];
    NSLog(@"Offset : %@", NSStringFromCGPoint(offset));

    [self.scrollview setContentOffset:huidigeOffset];

    CGPoint offset2 = [self.scrollview contentOffset];
    NSLog(@"Offset2 : %@", NSStringFromCGPoint(offset2));}

然而这不起作用,对于第一个最后一个NSLog我得到这个结果:

2011-05-03 09:41:42.066 Elektrozine_V6[1668:207] Offset : {0, 0}
2011-05-03 09:41:42.066 Elektrozine_V6[1668:207] Offset2 : {0, 0}

在viewDidLoad中,偏移量设置为:

2011-05-03 09:41:38.497 Elektrozine_V6[1668:207] Offset : {600, 0}

这部分是正确的,我实际上用这个来设定它:

    [scrollview setContentSize:CGSizeMake(2141, 0)];
    scrollview.contentOffset = CGPointMake((int)600, 0);

    huidigeOffset = [self.scrollview contentOffset];

有没有人知道为什么它不能用我制作的方法? 我搜索了很多网站,但没有人真正回答它

亲切的问候!

多雪

2 个答案:

答案 0 :(得分:0)


如果要转到上一页,则需要调用scrollRectToVisible方法而不是setContentOffSet。

答案 1 :(得分:0)

试试这个

-(void)goBack{ 

    NSLog(@"Offset : %@", NSStringFromCGPoint(scrollview.contentOffset));
    [scrollview setContentOffset:huidigeOffset];
    NSLog(@"Offset2 : %@", NSStringFromCGPoint(scrollview.contentOffset));
}