【发布时间】:2013-05-21 09:47:16
【问题描述】:
Samsung Galaxy S4 具有“Floating Touch”功能,即使不触摸屏幕也可以检测到手指。
当手指悬停时,我想在按钮 (btn1) 上触发一个事件。
我尝试使用OnHoverListener,但是当MotionEvent 为MotionEvent.ACTION_HOVER_ENTER 或MotionEvent.ACTION_HOVER_EXIT 或MotionEvent.ACTION_HOVER_MOVE 时,onHover 永远不会被调用,这是我需要的事件。
这是我的代码:
btn1.setOnHoverListener(new OnHoverListener() {
@Override
public boolean onHover(View v, MotionEvent event) {
Log.d("FloatingTouch", "onHover: "+event.getAction());
switch (event.getAction()) {
case MotionEvent.ACTION_HOVER_ENTER:
Log.d("FloatingTouch", "ACTION_HOVER_ENTER" );
return true;
case MotionEvent.ACTION_HOVER_MOVE:
Log.d("FloatingTouch", "ACTION_HOVER_MOVE" );
return true;
case MotionEvent.ACTION_HOVER_EXIT:
Log.d("FloatingTouch", "ACTION_HOVER_EXIT" );
break;
default:
break;
}
return false;
}
});
我错过了什么吗?也许一些许可?
【问题讨论】:
标签: android hover galaxy samsung-mobile