您的位置:首页 > 移动开发 > Android开发

Android弹性listview滚动

2011-11-23 15:54 351 查看
从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 感兴趣的加一下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: