zoukankan      html  css  js  c++  java
  • 滚动 Scroller OverScroller

    原文:https://www.baidu.com/link?url=26iKhqGV7w87fqTiCTCwQc3VPcCbedUpAlddWm3uHsEXAGaeH47xY8QCZNGcORGBAU0cp84aY-IVwQ1apNDZFV8lKnnj7CrTxpiWAl53h7O&wd=&eqid=9b7b7cf50012a866000000065ebcb1d5
    Scroller OverScroller只是用于帮助计算滚动距离的类,具体的平移效果是需要自己实现的;

    Scroller具体使用方法:

    1、mScroller = new Scroller(context);

    2、设置开始滚动:mScroller.startScroll(getScrollX(), 0, dx, 0);

    3、重写View中的方法,手动平移:

    @Override
    public void computeScroll() {
        // 第三步,重写computeScroll()方法,并在其内部完成平滑滚动的逻辑
        if (mScroller.computeScrollOffset()) {
            scrollTo(mScroller.getCurrX(), mScroller.getCurrY());
            invalidate();
        }
    }

    OverScroller:

    OverScroller的使用方法一致,但是多了这两个方法:spingBack()和fling()

    1、public boolean springBack(int startX, int startY, int minX, int maxX, int minY, int maxY)
    startX 和startY很好解释,是起始坐标,minX,maxX,minY,maxY 这4个坐标构成了一个矩形
    该方法返回一个boolean,假如View移动到起始位置时,有部分或者全部位于矩形之外则返回true,反之返回false 

    应用:比如说,一个view在屏幕中怎么移动都不需要滚动,只有拖到屏幕外才会滚动回来。

    2、fling

    fling指的是一种手势,手指在屏幕上快速滑动后离开屏幕,这时视图列表会进行一个快速的滚动。

  • 相关阅读:
    Path Sum II
    Convert Sorted Array to Binary Search Tree
    Construct Binary Tree from Inorder and Postorder Traversal
    Construct Binary Tree from Preorder and Inorder Traversal
    Maximum Depth of Binary Tree
    Binary Tree Zigzag Level Order Traversal
    Binary Tree Level Order Traversal
    Same Tree
    Validate Binary Search Tree
    Binary Tree Inorder Traversal
  • 原文地址:https://www.cnblogs.com/zhaozilongcjiajia/p/12887305.html
Copyright © 2011-2022 走看看