问题描述
这是我的触摸监听器:
var touchListener = OnTouchListener { view,motionEvent ->
val action = motionEvent.action
when (action and MotionEvent.ACTION_MASK) {
MotionEvent.ACTION_POINTER_DOWN -> {
Toast.makeText(activity," Two Fingers Tapped Once. Yeeeyy :)",Toast.LENGTH_SHORT).show()
// set the mTwoFingersTapped flag to TRUE when we tap with 2 fingers at once
twoFingers = true
}
}
false
}
在我的点击监听器中,我这样做:
if (!twoFingers) {
todoListener.onCommunicationInfoClicked(addressableReference)
} else {
todoListener.onLongClicked(todoItem)
twoFingers = false
Toast.makeText(activity,Toast.LENGTH_SHORT).show()
}
如果我用2根手指轻按,就会获得想要的效果,这在android手机上有效。但是我用两根手指在chromebook触摸板上轻按,却没有任何反应
解决方法
在听完并发布手指计数器和事件等之后,我确实设法使其工作:
var touchListener = OnTouchListener { view,motionEvent ->
val action = motionEvent.action
if (action == MotionEvent.ACTION_CANCEL && previousEvent == MotionEvent.ACTION_DOWN) //DO STUFF
previousEvent = action
false
}
但对此并不满意。