我已经使用自定义适配器实现了一个自定义库。我的要求是,无论用户在图库中操作的速度有多快或慢,只有一个项目应该在图库中更改。我试图覆盖画廊的onFling
方法
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
//Log.e("VELOCITY ORIGINAL", ""+velocityX);
if (velocityX > 500) {//moving left
velocityX = 500.0f;
}else if(velocityX < -500){//moving right
velocityX = -500.0f;
}
//Log.e("VELOCITY MODIFIED", ""+velocityX);
return super.onFling(e1, e2, velocityX, velocityY);
}
但这并没有产生预期的结果,因为有时它会轻弹一个项目,而有时它不会。
然后我尝试了
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
return false;
}
但这完全禁用了投掷操作。
有什么解决办法?