Ios 停止进一步执行,直到UIScrollView结束动画制作

Ios 停止进一步执行,直到UIScrollView结束动画制作,ios,iphone,objective-c,animation,uiscrollview,Ios,Iphone,Objective C,Animation,Uiscrollview,我有下面的场景 我有一个uiScrollView,它的contentOffset在开始时等于(0.0,0.0) 现在,我将新的scrollView contentOffset和动画设置为 [myScrollView setContentOffset:CGPointMake(100.0,0.0) animated:YES]; 现在在下一行,我正在打印contentOffset的值 NSLog(@"ContentOffset:%@",NSStringFromCGPoint(myScrollView

我有下面的场景

我有一个uiScrollView,它的contentOffset在开始时等于(0.0,0.0)

现在,我将新的scrollView contentOffset和动画设置为

[myScrollView setContentOffset:CGPointMake(100.0,0.0) animated:YES];
现在在下一行,我正在打印contentOffset的值

NSLog(@"ContentOffset:%@",NSStringFromCGPoint(myScrollView.contentOffset));
现在,它正在打印contentOffset的旧值。如果我在不做动画的情况下设置了值,那么它将为我提供新的ContentOffset


我应该怎么做,这样它也会给我新的contentOffset值和动画

您必须为
UIScrollView
设置一个委托,并监听委托方法
ScrollViewDiEndScrollingAnimation:
。然后获取该方法内的滚动位置,并调用找到该值后需要运行的下一位代码。

我正在手动设置ContentOffset,在这种情况下,将永远不会调用任何委托方法,只有在完成触摸后才会调用委托方法。这里,我用代码设置内容偏移量。正确阅读问题,然后answer@MehulThakkar我确实正确地阅读了问题,您正在使用动画设置contentOffset属性。这仍然会调用在到达最终内容偏移量的过程中可能的每个委托方法。这意味着您将得到
scrollViewDidScroll
一整串时间,然后在完成后调用
scrollViewDidEndScrollingAnimation:
。正确阅读文档并获得答案。我没有阅读文档,但我的主要问题是,在设置内容偏移量的下一行中,我没有得到它的新值,如果我想在该点上获得正确的值,我不想在委托方法中移动该代码,该怎么办(如果我这样做了,那么需要许多其他变量来改变范围,并且会产生很多问题,操作系统至少有任何方法(可能使用块),以便我可以在同一点上使用)如果您通过代码(一些变量或硬编码)设置偏移量然后你就知道它将在哪里结束,你不必等待它。只需使用你的变量或硬编码值,然后继续。如果我说
x=6
,我想要
x
的值,就在该设置之后,我可以使用
x
6
,因为我知道两者在那一点上是相同的。