首页 > 系统 > Android > 正文

Android 屏幕双击事件的捕获简单示例

2019-12-12 05:35:25
字体:
来源:转载
供稿:网友

在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 sth        break;      }      }    } 

以上就是对Android 屏幕双击的事件捕获的示例代码,后续继续补充相关资料,希望能帮助开发Android应用的朋友。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表