zoukankan      html  css  js  c++  java
  • UIScrollView监听静止的数种情况

    1.直接通过block

    -(void)testInBlock
    {
        //通过block监听
        [UIView animateWithDuration:1.0 animations:^{
            self.scrollView.contentOffset = CGPointMake(50, 20);
        } completion:^(BOOL finished) {
            NSLog(@"滚动完毕");
        }];
    }
    

    2.代理中的 scrollViewDidEndScrollingAnimation:方法
    触发条件:使用setContentOffset:animated:或者scrollRectToVisible:animated:方法让scrollView产生滚动动画

    -(void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
    {
        NSLog(@"静止-[使用setContentOffset:animated:或者scrollRectToVisible:animated:方法让scrollView产生滚动动画, 最后静止]");
    }
    

    3.代理中的scrollViewDidEndDecelerating:方法
    触发条件:人为拖拽scrollView产生滚动动画(手松开以后由于惯性会继续滚动)

    -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
    {
        NSLog(@"静止-[手松开以后由于惯性继续滚动, 最后静止]");
    }
    

    4.代理中的scrollViewDidEndDragging: willDecelerate:方法
    decelerate为YES : 手松开后会由于惯性继续滚动;NO : 手松开后立即静止

    -(void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
    {
        if (decelerate) {
            NSLog(@"手松开后由于惯性继续滚动");
        } else { // 手松开后立即静止
            NSLog(@"静止-[手松开后立即静止]");
            [self afterIdle];
        }
    }
    
  • 相关阅读:
    poj 2488 DFS
    畅通工程 并查集模版
    KMP 模板
    poj 1426 DFS
    poj 2528 线段数
    poj 3468 线段数 修改区间(点)
    CVPR2012文章阅读(2)A Unified Approach to Salient Object Detection via Low Rank Matrix Recovery
    如何制定目标
    Saliency Map 最新综述
    计算机视觉模式识别重要会议杂志
  • 原文地址:https://www.cnblogs.com/ShaRuru/p/5132027.html
Copyright © 2011-2022 走看看