UIScrollView和setContentOffset

我的问题是关于这个方法:
(void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated

我已阅读文档,但我不明白这种方法是什么。

感谢您的答案。

正如文件中所提到的。

滚动到特定的偏移量

滚动到特定的左上angular位置( contentOffset属性)可以通过两种方式完成。 setContentOffset:animated:方法将内容滚动到指定的内容偏移量。 如果animation参数为YES ,则滚动将以恒定速率从当前位置animation到指定位置。 如果animation参数是NO ,则滚动是立即的并且不发生animation。 在这两种情况下,代表scrollViewDidScroll:消息。 如果禁用了animation,或者如果通过直接设置contentOffset属性来设置内容偏移量,则委托会收到单个scrollViewDidScroll:消息。 如果启用了animation,则当animation正在进行时,委托会收到一系列的scrollViewDidScroll:消息。 当animation完成时,委托收到一个scrollViewDidEndScrollingAnimation:消息。

即简单地说,如果你想通过传递滚动位置值来滚动UIScrollView ,即滚动多less量,你可以使用这个方法。

这个方法也调用委托scrollViewDidScroll:UIScrollView类的委托方法,通过它可以维护UIScrollView的滚动量。

UIScrollView让你的内容大于你在屏幕上可以看到的内容。 在下面的图片中,您可以看到里面有一个绿色矩形的大红色矩形。

UIScrollView的contentArea属性定义了视图的逻辑大小(红色矩形)。 滚动视图的可见区域由绿色矩形表示。 contentOffset是可见区域的左上angular。 更改contentOffset,可见区域将移动。

 (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated 

上述方法将contentOffset(绿色矩形的左上angular)移动到指定位置,从而移动可见区域(绿色矩形)。

希望这可以帮助。

在这里输入图像说明