Button 按住并释放按钮在android中不起作用
我在安卓系统中有一个按钮。如果我按住这个按钮,一条消息应该会发出,同时发布另一条消息应该会发出,但有时仍然按住一个按钮,发布也会发生,发布消息也会发出 这是我的按钮代码:-Button 按住并释放按钮在android中不起作用,button,ontouchlistener,touch-event,motionevent,Button,Ontouchlistener,Touch Event,Motionevent,我在安卓系统中有一个按钮。如果我按住这个按钮,一条消息应该会发出,同时发布另一条消息应该会发出,但有时仍然按住一个按钮,发布也会发生,发布消息也会发出 这是我的按钮代码:- open_curtain.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, M
open_curtain.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
v.setSelected(true);
DeviceDataClassTwo obj = (DeviceDataClassTwo) v.getTag();
new ButtonOPressed(obj).execute();
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_CANCEL:
//it comes here when i move my finger more then 100 pixels
v.setSelected(false);
obj = (DeviceDataClassTwo) v.getTag();
new ButtonORelease(obj).execute();
Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
vibe.vibrate(140);
break;
}
return true;
}
});
在cod eyou发布的文章中,您有一个错误,两个“切换”案例没有正确地分开 您应该更改此选项:
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_CANCEL:
.
.
.
break;
对下列事项:
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_CANCEL:
.
.
.
break;
如果你要离开这个案例,“MOTIONEXPRECT.ACTRONGOUP”考虑把这个移动到“默认”的情况。“开关”应如下所示:
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
.
.
.
break;
case MotionEvent.ACTION_CANCEL:
.
.
.
break;
default:
break;