0

スクロール不可を実装したいViewPager。関数と関数をオーバーライドする必要があると人々は言います。onInterceptTouchEventonTouchEvent

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (this.enabled) {
        return super.onTouchEvent(event);
    }

    return false;
}

@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
    if (this.enabled) {
        return super.onInterceptTouchEvent(event);
    }

    return false;
}

今はスワイプできません。しかし、なくなったタップも必要です!どちらも がMotionEvents付いているaction=ACTION_DOWNので、この場合、どうすれば互いに区別してタップのみを渡すことができますか?

PS 何だ?iOS では、1 つのチェックマークをオフにすることでスクロールを無効にできます。

4

1 に答える 1

0

答えは、スイープは で始まり でACTION_DOWN終わる連続的なタッチ ジェスチャですACTION_UP。だから私はタッチだけで渡すことができますaction=ACTION_DOWN

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (this.enabled || event.getAction() == MotionEvent.ACTION_DOWN) {
        return super.onTouchEvent(event);
    }

    return false;
}
于 2013-02-19T19:42:12.883 に答える