Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 初級開發 >> Android游戲開發之旅20 雙按事件捕獲

Android游戲開發之旅20 雙按事件捕獲

編輯:初級開發

對於游戲開發中我們可能經常要用到雙按屏幕,在Android 1.6以前並沒有提供完善的手勢識別類,在Android 1.5 SDK中我們可以找到android.vIEw.GestureDetector.OnDoubleTapListener,但是經過測試仍然無法正常工作,不知道什麼原因,如果您知道可以聯系[email protected]共享下。最終我們使用的解決方法如下

     最終我們測試的如下:

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

     }


}

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved