2011-09-29 64 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