1

私の問題は onTouch に関するものです。私が知る限り、すべての onTouch イベントは 1 つのビューにリンクされているため、あるビューの ACTION_DOWN を検出する方法はなく、同じ onTouch イベントまたはスワイプで別のビューの ACTION_UP を検出する方法はありません。

いくつかのグラフィックを含むビュー (A) があり、EVENT_DOWN で座標が検出され、いくつかのビュー (「ボタン」) を所有するビュー (B) で構成される「ポップアップ」が作成されます。B の位置とサイズは時々変わる場合があります。B の子の 1 つ (「ボタン」) で ACTION_UP を検出したいと思います。

onInterceptTouchEvent を使用するのは良くないと思います。結局のところ、B は A の親ではありません。その逆です。

Android のドラッグ アンド ドロップ機能を使用するのは少し多すぎるようです。実際にグラフィックをドラッグしてデータを転送することを目的としているようです。画面から離れた指を検出するために非表示のグラフィックをドラッグするのは、あまりエレガントではありません。

もう 1 つの方法は、ポップアップが表示されるたびに B の子の位置 (およびサイズ) を検出することですが、これもあまりスムーズではありません。

ビュー A の ACTION_DOWN を検出し、次にその子 B (またはその子) の ACTION_UP を検出する最良の方法は何ですか?

または、これらのイベントを検出する他の方法はありますか?

4

1 に答える 1