1

キャンバス上に一度に複数のオブジェクトがあり、ユーザーがどのオブジェクトに対してジェスチャを実行したかを検出する必要があります。私が考えることができる唯一の方法は、画面を多くのビューに分割し、それぞれで聞くことですが、これはあまり効率的ではないので、できれば各オブジェクトに個別に属する個別のジェスチャー検出器を使用するより良い方法はありますか?

私は一日中これを解決しようとして私の髪を引き裂いてきたので誰かが私を助けてくれるなら私はとても感謝します

4

2 に答える 2

1

キャンバス上のオブジェクトの位置/ヒットボックスを追跡している場合は、それをMotionEventのRawXおよびRawYの値と比較できます。

于 2010-11-16T14:34:00.980 に答える
0
  @Override
        public boolean onDoubleTap(MotionEvent e) {
            float e_x = e.getRawX();
            float e_y = e.getRawY();
            if(e_x > 100 && e_x < 200 && e_y > 400 && e_y < 600){
            // do something
            }
            return true ;
        }

これは私がしたことです、ただ座標をチェックしてください

于 2015-09-22T11:15:35.530 に答える