指でパスを描くことができるカスタム ビューを作成しました。View クラスを拡張します。
ユーザーがカスタムビューに触れた場合、ListView内でそれをアイテムの1つとして使用すると、ListViewがスクロールされます。どうすればこれを防ぐことができますか?
どうにかしてカスタム ビューにフォーカスする必要があると思います。しかし、方法がわかりません。
アップデート:
可能な解決策を見つけました。カスタム ビューのonTouchEvent(Motion event)メソッドにgetParent().requestDisallowInterceptTouchEvent(true);.
これがないと、ユーザーがカスタム ビューに触れたときのイベント キューは次のようになります。
- MotionEvent.ACTION_DOWN
- MotionEvent.ACTION_MOVE
- MotionEvent.ACTION_MOVE
- MotionEvent.ACTION_CANCEL
MotionEventコードを受け取るとMotionEvent.ACTION_CANCEL、ListViewスクロールが始まります。