- The added line is THIS COLOR.
- The deleted line is THIS COLOR.
[[Android]]
''[[MobileApp>Mobile Application Guide]]'' > ''[[Android>Introduction to Android]]'' > ''Touch Event''
~
*Touch Evnet [#z28c057b]
・onTouchEvent()を用いてタッチ時のイベントを検出する~
・UP, DOWN, MOVE, CANCELなどのイベントが取得可能~
・getX()、getY()でタッチしたx、y座標を取得する~
・android:clickable = setClickable(true)が必要とのこと~
※onMotionEvent は onTouchEventに変わったらしい。
ダブルタップを検出するには~
GestureDetector.OnDoubleTapListenerインターフェースを使う
~
CENTER:''Touch Evnet''
| MotionEvent.ACTION_DOWN | タッチしたとき |
| MotionEvent.ACTION_UP | タッチが離れたとき |
| MotionEvent.ACTION_MOVE | タッチしながら移動したとき |
| MotionEvent.ACTION_CANCEL | タッチがキャンセルされたとき |
| MotionEvent.ACTION_OUTSIDE | タッチがターゲット外を押下したとき |
~
CENTER:''Function that relates to touch''
| getX() , getY() | タッチされてたX,Y座標取得 |
| getAction() | タッチイベントのアクション取得 |
| getDownTime() | 押されていた時間(ms単位)取得 |
| getEdgeFlags() | スクリーン端判定取得 |
| getSize() | タッチされている範囲、サイズ(推定)取得 |
| getEventTime() | タッチされていた継続時間(ms単位)取得 |
| getPressure() | タッチされた圧力取得 |
~
~
**Example of Android's source [#k071d076]
@Override
public boolean onTouchEvent(MotionEvent event) {
switch ( event.getAction() ) {
//タッチした
case MotionEvent.ACTION_DOWN:
break;
//タッチしたまま移動
case MotionEvent.ACTION_MOVE:
break;
//タッチが離れた
case MotionEvent.ACTION_UP:
break;
//タッチがキャンセルされた
case MotionEvent.ACTION_CANCEL:
break;
}
//タッチした際のx座標
x = (int) event.getX();
//タッチした際のy座標
y = (int) event.getY();
return super.onTouchEvent(event);
}
~
~
''[[Back>Introduction to Android]]''