逆引きAndroid入門 タッチイベント(TouchEvent)を取得するには

タッチイベント(TouchEvent)を取得するには

android.appパッケージ - Activityクラスを使用します。

 

TouchEvent

 

  • タッチイベントを取得するには、ActivityクラスのonTouchEvent()をオーバーライドします。
    引数には、MotionEventのインスタンスが渡されます。
  • MotionEventは、
    getAction()を呼び出すことで、タッチアクション(DOWN/UP/MOVE/CANCEL)、
    getEventTime()を呼び出すことで、イベント発生時刻(ms)、
    getX()、getY()を呼び出すことで、タッチされたx、y座標、
    を取得することができます。

 

サンプルソースコード

@Override
public boolean onTouchEvent(MotionEvent event) {
    String action = "";
    switch (event.getAction()) {
    case MotionEvent.ACTION_DOWN:
        action = "ACTION_DOWN";
        break;
    case MotionEvent.ACTION_UP:
        action = "ACTION_UP";
        break;
    case MotionEvent.ACTION_MOVE:
        action = "ACTION_MOVE";
        break;
    case MotionEvent.ACTION_CANCEL:
        action = "ACTION_CANCEL";
        break;
    }
    
    Log.v("MotionEvent",
        "action = " + action + ", " +
        "x = " + String.valueOf(event.getX()) + ", " +
        "y = " + String.valueOf(event.getY()));
    
    return super.onTouchEvent(event);
}

参考ページ