zoukankan      html  css  js  c++  java
  • Android弹性listview滚动

     从2.3开始,android开始支持listview的overscroll, 应该很方便可以做出类似iPhone的弹性滚动,及越过list顶端或者底端,然后弹性滚回。昨天google了半天的例子,一个没找到,今天又试了试,发现用很简单的方式就可以实现这个效果。大致如下:
    继承ListView
      private int delY;
      private boolean action_up;
    在 onTouchEvent(){
               ...
              case MotionEvent.ACTION_MOVE:
                delY = (int) (preY - y);
                preY = y;
                break;
              case MotionEvent.ACTION_UP:
                 action_up = true;
                break;
    }

    然后在2.3新增的onOverScrolled方法中做如下实现
    protected void onOverScrolled(int scrollX, int scrollY, boolean clampedX,
       boolean clampedY) {
        this.scrollBy(0, delY / 2);
        if (action_up) {
          this.scrollTo(0, 0);
      }
    }

    完工。

    注明:QQ技术交流群:108614806   感兴趣的加一下。

  • 相关阅读:
    HAOI2008题解
    codeforces round375(div.2)题解
    codeforces round373(div.2) 题解
    TJOI2015题解
    CF976D. Degree Set
    dtoj#4243. 熊猫(i)
    dtoj#4242. 大爷(w)&&CF1061E
    CF786C Till I Collapse
    dtoj#4239. 删边(cip)
    dtoj#2504. ZCC loves cube(cube)
  • 原文地址:https://www.cnblogs.com/zhiqiangsimida/p/2774666.html
Copyright © 2011-2022 走看看