如何在android手机上检测边缘滑动以操纵触摸行为?
我正在活动中实现如何在android手机上检测边缘滑动以操纵触摸行为?,android,android-gesture,Android,Android Gesture,我正在活动中实现gesturedector.OnGestureListener, 其覆盖的onTouchEvent是: public boolean onTouchEvent(MotionEvent event) { //gestureDetector is new GestureDetector(this,this) in Activity's onCreate() this.gestureDetector.onTouchEvent(event); r
gesturedector.OnGestureListener
,
其覆盖的onTouchEvent是:
public boolean onTouchEvent(MotionEvent event) {
//gestureDetector is new GestureDetector(this,this) in Activity's onCreate()
this.gestureDetector.onTouchEvent(event);
return super.onTouchEvent(event);
}
使用MotionEvent类中的getEdgeFlags进行边缘检测,如下所示:
@Override
public boolean onDown(MotionEvent e) {
final int edgeInfo = e.getEdgeFlags();
return ((edgeInfo == MotionEvent.EDGE_LEFT) || (edgeInfo == MotionEvent.EDGE_RIGHT)) ||
(edgeInfo == MotionEvent.EDGE_BOTTOM);
}
但onDown总是返回false。
我也尝试过改变
final int-edgeInfo=e.getEdgeFlags()代码>至
final int-edgeInfo=e.getAction()&e.getEdgeFlags()代码>
以及final int-edgeInfo=e.getActionMasked()&e.getEdgeFlags()代码>以防万一
但毫无益处
我看过,但我发现只有
只有一些较旧的手机返回非零值
我应该自己做
我用API错了吗
getEdgeFlags()有更好的替代方案吗
即使onDown返回false,在logcat中,我仍然可以看到其他GestureDetector.OnTestureListener
被解雇的方法,为什么
如果有的话,一个小片段会有所帮助