UIscrollView DidScroll - 仅在触摸时

Ami*_*gin 5 objective-c uiscrollview

我想检测用户何时滚动UIScrollView.当发生这种情况时会调用scrollViewDidScroll,但是在另一个时间调用它 - 当用户将视图滚出界限然后释放时,视图会跳回到它的位置 - 即使用户不触摸也会调用该方法根本就是屏幕(视图自己滚动).

如何检测滚动和用户一起触摸?

joe*_*ern 10

UIScrollView有一个属性dragging,指示滚动是否由用户完成.因此,要查看用户是否滚动滚动视图或滚动是否由其他内容(如动画)引起,您可以执行以下操作:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
   if (scrollView.dragging) {
      // scrolling is caused by user
   }
}
Run Code Online (Sandbox Code Playgroud)