0

リスト ビューにスワイプ動作を実装しました。したがって、基本的に、アイテムをドラッグすると、アイテムのアルファ値がそれに応じて変化します (Roman Nurik Roman Nurik & Tim Roes によるコードのおかげです)。アプリケーションは正常に動作しています。基本的に、一般的なリストアイテムでは、タッチはクリックとして扱われるため、ドラッグ機能のないリストでは、2 つの違いは見つかりません。しかし、私の場合は、onTouch() で座標を検出して、ユーザーが左から右にスクロールしているか、右から左にスクロールしているかを判断します。私のリストは、タッチとクリックの違いを生み出します。したがって、リスト項目でクリックイベントを手動でディスパッチして、ユーザーがクリックせずに項目をタッチしてドラッグした場合でも、OnListItemClick() を呼び出すことができるようにすることを知りたいです。

ありがとう。

4

1 に答える 1

0

長い間、返事はありません。とにかく、私はこの質問に関する私自身の調査結果を共有することを考えました. 私の知る限り、手動でイベントをディスパッチする方法はありません。しかし、別の方法で問題を処理できることがわかりました。これが私がそれを処理した方法です。

public boolean onTouch(View v, MotionEvent event) {

if(v.isPressed()
//
}

isPressed()ビューが押された状態のときに返されます。true が返されたら、先に進むことができます。

それが他の誰かに役立つことを願っています。

于 2013-03-29T20:14:49.190 に答える