我正在使用黑莓触摸事件,我需要处理TouchEvent.MOVE
,TouchEvent.UP
和TouchEvent.DOWN
以移动图像传送带和TouchEvent.CLICK
以生成一些特定操作。触发事件黑莓触发多次
我的问题是touchEvent()
方法被多次调用。我怎样才能防止这一点?因为行为越来越混乱。
例如:当我只想捕获TouchEvent.CLICK
事件时,UP-DOWN-MOVE-CLICK将在下一个触发器之后触发。
我的代码执行以下操作:
protected boolean touchEvent(TouchEvent message) {
if (message.getEvent() == TouchEvent.CLICK) {
//CHANGE THE CONTENT OF A FIELD
return true;
} else if ((message.getEvent() == TouchEvent.MOVE)
|| (message.getEvent() == TouchEvent.UP)
|| (message.getEvent() == TouchEvent.DOWN)) {
//DELETE THE FIELD
//MOVE A CAROUSEL OF IMAGES
} else {
return false;
}
}
public void moverTouch(int dx) {
//ADD THE FIELD PREVIOUSLY DELETED
}
正如你所看到的,当被捕获的CLICK
事件,我需要改变一个字段的内容,但是当MOVE
或UP
或DOWN
事件被捕获,我需要从他的经理中删除那个Field
,做一些与图像传送带一起工作,然后重新添加先前删除的字段。
转盘移动部件工作正常,但是当我试图捕捉只是CLICK
事件,其他人都被触发为好,但moverTouch(
)函数不会被触发,因为有在转盘上没有实际的运动的图像,我结束了一个删除的领域,我需要更新其内容。
在所有黑莓的原始风暴9500以外,CLICK和DOWN是同义词,并且总是一起出现。同样,UNCLICK和UP总是一起出现。您应该忽略UP和DOWN事件,因为9500设备已经完全灭绝。 – adwiv