私も同じタイプの問題に直面していました....私はこの方法で解決します...
マルチタッチ用のAndroidマルチタッチコントローラーhttp://code.google.com/p/android-multitouch-controller/を使用している場合
およびGestureDetectorhttp ://www.41post.com/4194/programming/android-detecting-double-tap-eventsfor double tap
よりも
MultiTouchController.javaでこの手順を更新します
->インポート
import android.view.GestureDetector.OnDoubleTapListener;
import android.view.GestureDetector.OnGestureListener;
->実装
public class MultiTouchController<T> implements OnGestureListener{
->
public MultiTouchController(MultiTouchObjectCanvas<T> objectCanvas2, boolean handleSingleTouchEvents) {
//....
gd = new GestureDetector(this);
// set the on Double tap listener
gd.setOnDoubleTapListener(new OnDoubleTapListener() {
@Override
public boolean onDoubleTap(MotionEvent e) {
// set text color to green
Log.d("CLICK", "double taped");
return false;
}
@Override
public boolean onDoubleTapEvent(MotionEvent e) {
// if the second tap hadn't been released and it's being moved
if (e.getAction() == MotionEvent.ACTION_MOVE) {
Log.d("CLICK", "double tap event ACTION_MOVE");
} else if (e.getAction() == MotionEvent.ACTION_UP)// user
// released
// the
// screen
{
Log.d("CLICK", "double tap event ACTION_UP");
}
return false;
}
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
// set text color to red
Log.d("CLICK", "single taped");
return true;
}
});
-> onTouch(MotionEvent event)でタッチイベントをgdに設定
public boolean onTouchEvent(MotionEvent event) {
gd.onTouchEvent(event);
try {
//.....
他のファイルは変更しないでください。
今テスト...あなたが問題を解決したことを願っています...返信する必要があります...