2014-02-13 54 views
0

我想檢測多個手勢,例如,用三個手指檢測滾動。 當我用三個手指進行滾動時,將文本視圖的文本設置爲「YES」,對於其他情況,將其設置爲「NO」。如何在android中檢測多個手勢?

這是我走到這一步:

private GestureDetector detector; 

detector = new GestureDetector(getApplicationContext(), this); 

layout.setOnTouchListener(new OnTouchListener() { 
    public boolean onTouch(View v, MotionEvent event) { 
     return true; 
    } 
}); 

的問題是:在方法onTouch,我們可以檢測多少個手指touching(event.getpointcount()),但我不能讓這動作,如滾動。 如果我這樣寫在這個方法:return detector.onTouchEvent(event) 我寫了一些方法,如onDown,onFling等,我可以檢測下來,滾動,扔等等,但這只是爲了一個手指。

我希望你明白我的意思。我混淆了兩兩件事:

  • multi touch我們可以知道我們不多少的手指,但知道我們知道什麼行動
  • single gesture它正在做的行動,但我們不知道我們有多少個手指使用。

我要的是將它們合併:多指,如用三根手指等

你能幫我滾動手勢?先謝謝你。

回答

0

可能會嘗試event.getPointerCount();

+0

thx但我想你不明白我在說什麼。 – Yves

+0

event.getPointerCount()用於方法OnTouch,我們可以檢測ACTION_DOWN,ACTION_UP,ACTION_MOVE。我們不能在那裏檢測ACTION_SCROLL – Yves