0

我已经使用自定义适配器实现了一个自定义库。我的要求是,无论用户在图库中操作的速度有多快或慢,只有一个项目应该在图库中更改。我试图覆盖画廊的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;
}

但这完全禁用了投掷操作。

有什么解决办法?

4

1 回答 1

0

为此,您必须覆盖Gallery类中的onFling方法试试这个,然后使用ExtendedGallery而不是Gallery

于 2012-06-19T11:35:56.243 回答