1

アイテムスワイプ機能を実装するためにonTouchListenerを設定したListViewで、onItemClickとonItemLongClickイベントが必要ですが、できません。

onTouch 関数の int に注目せずに false を返すと、onItemClick または longClick が応答します。コードは次のようになります。

public boolean onTouch(View v, MotionEvent event) {
    return false
}

しかし、何かを行った後、Action_Up で false を返すと、クリック イベントは応答しません。

public boolean onTouch(View v, MotionEvent event) {
        switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            // Todo something
            break;
        case MotionEvent.ACTION_MOVE:
            // Todo something
            break;
        case MotionEvent.ACTION_UP:
            // Todo something
            if (the Condition) {
                return true;
            } else {
                return false;
            }
            break;

        default:
            break;
        }
        return true;
    }

どうしてか分かりません。これを数日間検索しましたが、今でも方法がわかりません。助けてください。

4

1 に答える 1

-1

私は道を見つけました。ちなみに、これを行うライブラリはたくさんあります。

于 2014-08-21T05:55:44.703 に答える