2

ビュー関連の問題のトラブルシューティングを行っていました。クリックリスナーは、そのときに起動されません。試行錯誤の長いセッションの後、私は親ビューが無効になっていることを知り、すべてのイベントをその子に捨てました。いずれかの消費したタッチイベントのビューを確認します。

アプリに注入されたタッチイベントやクリックイベントは、Androidでどのように発生するのかを見つける方法はありますか?どのようにそれが派遣されたか、どのビューがそれによって横断されたか、それを無視した人(なぜ)、誰がそれを捨てた(そして、なぜ)、そして最後にそれを消費したかのように。

理想的には、アプリケーション内のクリックごとにLogcatが生成される、何らかの低レベルのダンプです。

+0

onTouchEvent()メソッドをオーバーライドし、ブレークポイントを設定して、ビューが予期したビューの代わりにイベントを処理したかどうかを確認できます(これは醜い方法です...) – wanglugao

答えて

0

あなたはsimilar post at the issue trackerダイアンHackbornで見ることができるように書いている:

あり

は現在、これを行う方法はありません。

意味するように、このようなAPIはフレームワークにありません。

しかし、カスタムルートViewGroupを使用して、各タッチイベント(onInterceptTouchEvent()を介して)とdump the MotionEventを聞くことができます。

私はそれがこれまでの唯一の可能な方法だと信じています。

関連する問題