Ios 为什么当我试图滚动到更高的位置时,它只是滚动到最高的位置

Ios 为什么当我试图滚动到更高的位置时,它只是滚动到最高的位置,ios,uiscrollview,Ios,Uiscrollview,我正在uiScrollView上使用scrollRectToVisible。当我尝试在下面滚动时效果很好。但当我的卷轴在下方,我尝试向上滚动时,只需滚动到位置0,而不是我在此方法中使用的位置: [self.scrollView scrollRectToVisible:CGRectMake(0, 0, self.scrollView.frame.size.width, self.scrollView.frame.size.height + 150) animated:YES]; 当我处于例如se

我正在uiScrollView上使用scrollRectToVisible。当我尝试在下面滚动时效果很好。但当我的卷轴在下方,我尝试向上滚动时,只需滚动到位置0,而不是我在此方法中使用的位置:

[self.scrollView scrollRectToVisible:CGRectMake(0, 0, self.scrollView.frame.size.width, self.scrollView.frame.size.height + 150) animated:YES];

当我处于例如self.scrollView.frame.size.height的位置时,它工作良好,但当我处于例如self.scrollView.frame.size.height+300的位置时,它会滚动到self.scrollView.frame.size.height位置。

您使用的方法不正确。scrollRectToVisible将滚动滚动视图,直到与滚动视图相对的整个矩形(或其中大部分)位于UIScrollView的“绘制”区域

[self.scrollView scrollRectToVisible:CGRectMake(100100,1,1)动画:是]


将使滚动视图中的位置100:100可见。

我不确定我是否理解您的意思。但是您提供的代码将始终滚动到顶部,因为原点是(0,0)。您是否已将
UIScrollView
contentSize
高度设置为至少
self.scrollView.frame.size.height+300
?如果您正在设置分页内容,则这是您可以设置的默认属性。但对于您的问题,这是因为我认为+300应该位于原点CGRectMake的Y位置(0,150,self.scrollView.frame.size.width,self.scrollView.frame.size.height),显然您不能查看比滚动视图的宽度和高度更多的滚动视图内容