onTouchListener
画面の青い部分にを設定しました。指が触れたときにのみx、y座標を取得します。白い部分は何もしません。問題は、最初に指が青い部分に触れて、白い部分に「移動」したときに、x、y座標を取得し続けることです。理想的には、指が画面を離れるときにデバイスがモーションイベントの検出を停止するようにします。あなたが助けることができることを願っています。
1551 次
1 に答える
1
最も簡単な解決策は、x、y座標をビューの境界の四角形と比較するだけで、指がビューに触れているかどうかを確認することです。その後、dispatchTouchEventからfalseを返すことにより、イベントの受信を停止できます。
編集:
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
Rect outRect = new Rect();
getDrawingRect(outRect);
if (outRect.contains((int) event.getX(), (int) event.getY())) {
return true; // I want more events
} else {
return false; // stop events until next ACTION_DOWN on me
}
}
于 2013-03-13T13:50:35.060 に答える