1

dispatchTouchEventメソッドをオーバーライドすることで、クリック/タッチされたビューのIDを取得することは可能ですか?! したがって、pEvent.getClickedViewId() のように必要です。奇妙な UI 動作がいくつかありますが、それはいくつかのレイアウトが重複しているためだと思います。だからこそ、どのビューがTouchEventでフォアグラウンドにあるかを確認したいのです...

 @Override
 public boolean dispatchTouchEvent(MotionEvent pEvent) {

    Log.d("TOUCH EVENT","getCLickedViewid?!?!" );

}
4

1 に答える 1

0

ビューにディスパッチされる前にdispatchTouchEventが発生するため、その時点でビューを簡単に取得することはできません。どのビューがイベントを処理するかを自分で把握する必要があります。

より一般的な方法は、view.setOnTouchListener()メソッドを介してタッチリスナーを追加することです。これにより、ビューがハンドラーに渡されます。しかし、これがあなたのケースでうまくいくなら、この時点でイベントがディスパッチされているので、私にはわかりません。

于 2013-02-04T11:29:46.313 に答える