2

グリッドビューの空きスペースに指を置かないとスワイプ/次のページに移動できません。これに遭遇した人はいますか?

4

1 に答える 1

0

ViewPager をサブクラス化し、onInterceptTouchEvent() メソッドをオーバーライドできますか。以下は、X 方向のスワイプをチェックして、必要に応じて垂直方向のスクロールを可能にします。問題が完全に解決するかどうかはわかりませんが、試してみてください。

private static final int minSwipeDistance = 30;
private float mTouchX;

@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
    boolean response = super.onInterceptTouchEvent(event);
    float x = event.getX();
    switch (event.getActionMasked()) {
    case MotionEvent.ACTION_DOWN:
        mTouchX = x;
        break;
    case MotionEvent.ACTION_MOVE:
        float dX = Math.abs(x - mTouchX);
        if (dX > minSwipeDistance)
            return true;
        break;
    }
    return response;
}
于 2012-11-22T21:02:02.500 に答える