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

Android 带阻尼效果的ListView

2014-06-11 09:45 211 查看
/**
* 带阻尼效果的ListView
* Created by Lezg on 2014/6/11.
*/
public class BounceListView extends ListView {

private static final int MAX_Y_OVERSCROLL_DISTANCE = 200;
private static final float SCROLL_RATIO = 0.5f;// 阻尼系数

public BounceListView(Context context) {
super(context);
}

public BounceListView(Context context, AttributeSet attrs) {
super(context, attrs);
}

public BounceListView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

@Override
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent) {

int newDeltaY = deltaY;
int delta = (int) (deltaY * SCROLL_RATIO);
if (delta != 0) {
newDeltaY = delta;
}
return super.overScrollBy(deltaX, newDeltaY, scrollX, scrollY, scrollRangeX, scrollRangeY, maxOverScrollX, MAX_Y_OVERSCROLL_DISTANCE, isTouchEvent);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: