1

我开发了一个自定义图库并覆盖其中的 on-fling 方法以一次滑动一个图像。它有效,但问题是当我从上到下滑动时,反之亦然,图像被滑动并因此发生变化。

下面是我的代码

public class mygallery extends Gallery {

public mygallery(Context ctx, AttributeSet attrSet) {
    super(ctx, attrSet);

}

private boolean isScrollingLeft(MotionEvent e1, MotionEvent e2) {
    return e2.getX() > e1.getX();
}

private boolean isScrollingRight(MotionEvent e1, MotionEvent e2){
    return e2.getX() < e1.getX();

}



@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
        float velocityY) {
    int kEvent=0;
    if (isScrollingLeft(e1, e2)) { // Check if scrolling left
        kEvent = KeyEvent.KEYCODE_DPAD_LEFT;
    } else if(isScrollingRight(e1, e2)) { // Otherwise scrolling right
        kEvent = KeyEvent.KEYCODE_DPAD_RIGHT;
    } 
    onKeyDown(kEvent, null);
    return true;
}

}

我怎样才能摆脱图像的滑动(从上到下,从下到上)。

4

1 回答 1

1
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
        float velocityY) {
    if (Math.abs(velocityX) > Math.abs(velocityY))
    {
        // This is an horizontal fling
        // Do your operation here
    }     
    else
        // This is an vertical fling
 }
于 2012-04-23T13:08:38.750 回答