Android游戏开发之旅20 双按事件捕获 Android开发技术

   对于游戏开发中我们可能经常要用到双按屏幕,在Android 1.6以前并没有提供完善的手势识别类,在Android 1.5 SDK中我们可以找到android.view.GestureDetector.OnDoubleTapListener,但是经过测试仍然无法正常工作,不知道什么原因,如果您知道可以联系android123@163.com共享下。最终我们使用的解决方法如下

     最终我们测试的如下:

  
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;
        }

     }

}

本人擅长Ai、Fw、Fl、Br、Ae、Pr、Id、Ps等软件的安装与卸载,精通CSS、JavaScript、PHP、ASP、C、C++、C#、Java、Ruby、Perl、Lisp、Python、Objective-C、ActionScript、Pascal等单词的拼写,熟悉Windows、Linux、OS X、Android、iOS、WP8等系统的开关机。

通过下面的方式来联系我们:

电邮:138762189@qq.com

联系QQ:点击这里给我发消息

官方站:www.tadke.com

※ ※ 联系请加我的企鹅号 ※※

※ ※技术支持请微信联系站长 ※※

Copyright © 2023 Tadke.com. 琼ICP备20000547号