Welcome

首页 / 移动开发 / Android / Android 屏幕双击事件的捕获简单示例

在Android游戏开发中,我们可能经常要像PC操作一样在屏幕上双击。对于屏幕双击操作,Android 1.6版本以前并没有提供完善的手势识别类,Android 1.5的SDK中提供了android.view.GestureDetector.OnDoubleTapListener,但经测试无法正常工作,不知是何原因。最终我们的解决方案如下面的代码:
Java代码
public class TouchLayout extends RelativeLayout { public Handler doubleTapHandler = null; protected long lastDown = -1;public final static long DOUBLE_TIME = 500;public TouchLayout(Context context) {super(context); } public TouchLayout(Context context, AttributeSet attrs) {super(context, attrs); } public TouchLayout(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle); } public boolean onTouchEvent(MotionEvent event) { this.handleEvent(event);if (event.getAction() == MotionEvent.ACTION_DOWN) {long nowDown = System.currentTimeMillis(); if (nowDown - lastDown < DOUBLE_TIME){ if (doubleTapHandler != null) doubleTapHandler.sendEmptyMessage(-1); } else {lastDown = nowDown;}}return true;}protected void handleEvent(MotionEvent event) { switch (event.getAction()) {case MotionEvent.ACTION_DOWN: //Do sth 这里处理即可break; case MotionEvent.ACTION_UP://Do sthbreak;}}} 
以上就是对Android 屏幕双击的事件捕获的示例代码,后续继续补充相关资料,希望能帮助开发Android应用的朋友。