0

私はそれに対する解決策を書きました、それは完璧に機能していますが、それは最善の解決策ではないと思います...

private volatile boolean sweepEvent;

@Override
public boolean onTouchEvent(MotionEvent event) {


    if (MotionEvent.ACTION_UP == event.getAction() && !sweepEvent) {
        sweepEvent = false;
        ((View) this.getParent()).performClick();
        return false;
    } else if (MotionEvent.ACTION_MOVE == event.getAction()) {
        sweepEvent = true;
    } else {
        sweepEvent = false;
    }

    return super.onTouchEvent(event);
}

ご覧のとおり、ユーザーがシークバーをタップしても進行状況を移動していないときに、親ビュー (LinearLayout) を呼び出す必要もあります。行: ((View) this.getParent()).performClick(); しかし、まったく機能していません...

コールバック用の新しいリスナーを追加することを考えていますが、それは良い解決策ではありません...

4

0 に答える 0