美文网首页
[九九Tips] - 监听ScrollView滚动结束的2种代理

[九九Tips] - 监听ScrollView滚动结束的2种代理

作者: 九九丸子 | 来源:发表于2016-07-08 19:06 被阅读532次

    [九九Tips]- http://www.jianshu.com/users/bab86b3e8aa3/latest_articles

    ScrollView滚动结束的2种代理方法scrollViewDidEndScrollingAnimation和scrollViewDidEndDecelerating的比较

    在scrollView滚动动画结束时, 会调用下面两种代理方法

    //第一种
    - (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
    {    
    }
    //第二种
    - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
    {
    }
    

    两个方法发区别:

    第一种: 必须是使用setContentOffset:animated:方法或者scrollRectVisible:animated:方法让scrollView方法的产生的滚动动画,在动画结束的时候会调用该方法.
    第二种:必须人为拖拽scrollView产生的滚动动画,动画结束会调用第二种方法.

    举例:

    用下面这种动画设置ScrollView的滚动,不会调用上面两种滚动结束的代理方法!

      [UIView animateWithDuration:0.25 animations:^{
                   self.scrollView.contentSize = CGPoint;
        }];
    

    用下面这个方法,就会调用第一种结束滚动方法(DidEndScrollingAnimation).

       [self.scrollView setContentOffset:CGPoint animated:YES];
    

    相关文章

      网友评论

          本文标题:[九九Tips] - 监听ScrollView滚动结束的2种代理

          本文链接:https://www.haomeiwen.com/subject/tsdrjttx.html