效果:listview到达底部时,再向上滑动仍可以滑动一段距离,然后回弹。
具有弹性的ListView实现起来比较简单,只需修改ListView的如下方法即可:
int mMaxOverDistance = 50;
private void initView() {
DisplayMetrics metrics = getContext().getResources().getDisplayMetrics();
float density = metrics.density;
mMaxOverDistance = (int) (density * mMaxOverDistance);
}
// ListView 滑动到边界时的方法
@Override
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY,
int scrollRangeX, int scrollRangeY, int maxOverScrollX,
int maxOverScrollY, boolean isTouchEvent) {
return super.overScrollBy(deltaX, deltaY, scrollX, scrollY, scrollRangeX, scrollRangeY,
maxOverScrollX, mMaxOverDistance, isTouchEvent);
}
修改参数scrollY,即可达到想要的效果
Android5.0的效果不是太好,如果要使用建议取出MD的滑动效果