- 追加された行はこの色です。
- 削除された行はこの色です。
[[Android]]
#freeze
''[[MobileApp>Mobile Application 入門]]'' > ''[[Android>Android]]'' > ''Touch Event''
~
~
*タッチイベント [#z28c057b]
・onTouchEvent()を用いてタッチ時のイベントを検出する~
・UP, DOWN, MOVE, CANCELなどのイベントが取得可能~
・getX()、getY()でタッチしたx、y座標を取得する~
・android:clickable = setClickable(true)が必要とのこと~
※onMotionEvent は onTouchEventに変わったらしい。
ダブルタップを検出するには~
GestureDetector.OnDoubleTapListenerインターフェースを使う
~
CENTER:''タッチイベント''
| MotionEvent.ACTION_DOWN | タッチしたとき |
| MotionEvent.ACTION_UP | タッチが離れたとき |
| MotionEvent.ACTION_MOVE | タッチしながら移動したとき |
| MotionEvent.ACTION_CANCEL | タッチがキャンセルされたとき |
| MotionEvent.ACTION_OUTSIDE | タッチがターゲット外を押下したとき |
~
CENTER:''タッチ関連の関数''
| getX() , getY() | タッチされてたX,Y座標取得 |
| getAction() | タッチイベントのアクション取得 |
| getDownTime() | 押されていた時間(ms単位)取得 |
| getEdgeFlags() | スクリーン端判定取得 |
| getSize() | タッチされている範囲、サイズ(推定)取得 |
| getEventTime() | タッチされていた継続時間(ms単位)取得 |
| getPressure() | タッチされた圧力取得 |
~
**ソース例 [#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);
}
~
~
*タッチ関係の参考HP [#af941c6e]
~
[[参考 - タッチイベント - モグラ叩き>http://www.hakkaku.net/articles/20090212-348]]
[[参考 - ロングタップ>http://www.hoge256.net/2009/09/462.html]]
// http://blogs.yahoo.co.jp/umo_den5879/2473923.html
[[参考 - ソフトウェア技術ドキュメントを勝手に翻訳>http://www.techdoctranslator.com/android/guide/ui/ui-events]]
[[参考 - タッチアプリの作り方>http://docs.google.com/viewer?a=v&q=cache:ZY3H1k_8J9EJ:android.siprop.org/index.php%3Fplugin%3Dattach%26refer%3D%25A5%25EF%25A1%25BC%25A5%25AD%25A5%25F3%25A5%25B0%25A5%25B0%25A5%25EB%25A1%25BC%25A5%25D7%252F%25B6%25E2%25C2%25F4%25BB%25D9%25C9%25F4%252F%25C2%25E8%25C6%25F3%25B2%25F3%25CA%25D9%25B6%25AF%25B2%25F1%26openfile%3D2_koshino.pdf+android+%E3%82%BF%E3%83%83%E3%83%81%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88&hl=ja&gl=jp&pid=bl&srcid=ADGEESjZ6j1mQkva1VAiIEUZeE_ZR2wgidosypT8XkQbJLXASb-cXeLiymF_UnQ6QiIjUOwLVgJhHP8lOYpVBmcyFYZRqpWiuFoI0YWb6KRZplHzs9TwmItFH28FOxuqHGKZ1rvMvE3y&sig=AHIEtbQqhIxUzISKzXUugpdD0R-Efbkx9g]]
[[参考 - タッチの特性>http://open-mobile.jp/mobilelabo/android-applications-on-real-machines/study-a-touch-panel-of-android-applications]]
[[参考 - んパカさんのHP>http://www.saturn.dti.ne.jp/~npaka/android/TouchEx/index.html]]
[[参考 - Secret Sword!!さんのページ - Androidでドラッグできる画像を作りたい>http://d.hatena.ne.jp/voidy21/20090829/1251527903]]
~
~
''[[戻る>Android]]''