我有一个Button
,我希望它在正常按下时(启动Command
)具有一种行为,而在longPressed(使用longPressListener
时)具有另一种行为。但是,长按Button
时,也会运行'normalPress'Command
。如何确保在longPress上调用only longPressListener?
没有内置的支持。这是您的业务逻辑必须手动处理的事情。这样做的核心原因是,我们在那个阶段还无法得知长按已处理了该动作。
private boolean longPressHandled;
void callbackFromLongPress() {
longPressHandled = true;
// rest of your logic...
}
void actionEventCallback() {
if(longPressHandled) {
longPressHandled = false;
return;
}
// rest of your logic...
}