2011-09-29 35 views
1

我有一個上點擊收聽:的Android轉向點擊進入觸摸

whiteKeyPressedArray[i].setOnClickListener(new View.OnClickListener() { 
       public void onClick(View v) { 
}} 

我看到這允許接觸:

public boolean onTouch(View v, MotionEvent event) { 

//Switch case for type of touch 
} 

但我怎麼能檢測觸摸,而不是點擊我whiteKeyPressedArray [我]?

謝謝!

回答

0

我不知道是什麼whiteKeyPressedArray [i]是的,但你嘗試過:

whiteKeyPressedArray[i].setOnTouchListener(new View.OnTouchListener() { 
    public boolean onTouch(View v, MotionEvent event) { 
     return true; // or false if you want the event to pass on 
    } 
}); 

也許這是你在找什麼呢?

+0

經由MotionEvent所以這是propably威力比的onClick –

+0

這給出了一個語法錯誤,你可以取像ACTION_DOWN,ACTION_UP,ACTION_MOVE等動作:/ – beans

+0

返回類型是View.OnTouchListener.onTouch(查看不兼容,MotionEvent) – beans

1

OnTouch將會觸發很多次:),實際上只要你將手指放在該元素上(只要你觸摸該元素),onTouch就會一遍又一遍地重複。哪裏onClick只會觸發一個,但只有當你從你的onTouch處理程序返回false。

+0

只需添加。您使用onTouch進行觸摸事件,如手指移動等等。您可以使用onClick進行「選擇」操作(然後在同一視圖中按下手指)。您可以使用onTouch來達到同樣的目的,但需要多一點工作。 – DeeV