两个都时滚动停后执行的scrollView代理方法,使用的有什么区别呢?
// 触摸屏幕并拖拽画面,再松开,最后停止时,触发该函数
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
if (!decelerate){
}
}
{
if (!decelerate){
}
}
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
}
第一个DidEndDragging 停止拖拽的时候开始执行
第二个:DidEndDecelerating 减速停止的时候开始执行
// called on finger up if the user dragged. decelerate is true if it will continue moving afterwards
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate;
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView; // called when scroll view grinds to a halt
也就是说 它俩执行的时间不一样 scrollview 先是执行 停止拖住的代理 然后在执行减速停止的代理
正常 你快速的拖拽,它两个函数都是会响应的。但是如果你是慢慢的拖动,不存在加速度的时候,就只会调上面的那个函数,而不会调下面那个!

本文探讨了iOS中UIScrollView的两个滚动结束代理方法:scrollViewDidEndDragging和scrollViewDidEndDecelerating。前者在停止拖拽时执行,后者在减速停止时执行。当快速拖动时,两个方法都会被调用;但缓慢拖动时,只有scrollViewDidEndDragging会被调用。
1425

被折叠的 条评论
为什么被折叠?



