检测所有手势
Detect gesture over everthing
如何检测我 Activity 中的任何手势,即使那里有很多东西(Layouts
、Images
、RecyclerViews
等)。
我打算创建一个可以随时完成的手势。
可能吗?
我试过这个:
findViewById(android.R.id.content).setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Log.e("GESTURE", "GESTURE");
return false;
}
});
但它不起作用。我觉得是因为其他views拦截了事件
不知道是否可以检测到 activity 上方的手势,例如 window。
谢谢!
可以,但是有点棘手。阅读有关触摸处理的内容,尤其是 onInterceptTouchEvent
,它可用于父级拦截传给子级的触摸。
您将在(自定义)根视图中实现该方法,然后在其中施展手势魔法。
这里有一些有价值的信息:Android: Difference between onInterceptTouchEvent and dispatchTouchEvent?
如何检测我 Activity 中的任何手势,即使那里有很多东西(Layouts
、Images
、RecyclerViews
等)。
我打算创建一个可以随时完成的手势。
可能吗?
我试过这个:
findViewById(android.R.id.content).setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Log.e("GESTURE", "GESTURE");
return false;
}
});
但它不起作用。我觉得是因为其他views拦截了事件
不知道是否可以检测到 activity 上方的手势,例如 window。
谢谢!
可以,但是有点棘手。阅读有关触摸处理的内容,尤其是 onInterceptTouchEvent
,它可用于父级拦截传给子级的触摸。
您将在(自定义)根视图中实现该方法,然后在其中施展手势魔法。
这里有一些有价值的信息:Android: Difference between onInterceptTouchEvent and dispatchTouchEvent?