UIScrollView在没有减速时返回YES的isDragging值

3
我希望知道一个UIScrollView (UITableView)是否正在拖动(滚动),因为用户的手指正在主动滚动它(用户的手指在scrollview上,即在屏幕上),还是因为scrollview被“甩”了,正在按照UIScrollView的默认行为“减速”滚动。

我尝试检查

[self.tableView isDragging]

很遗憾,这两种情况下都会返回“YES”。那么我如何确定用户的手指是否在“屏幕”上并正在滑动呢?
3个回答

9

UITableView上识别触摸时,使用isTracking代替isDragging

或者

如果您想识别UITableview的拖动,请使用滚动视图委托方法。


2
通过使用滚动视图委托,您可以实现此目的。
 - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate;
 - (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView;   
// called on finger up as we are moving

 - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView; here

-1

尝试使用uiscrollView Delegate。当用户滑动时,您将在此处收到调用。

– scrollViewDidScroll:

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接