检测手势超过
问题描述:
如何检测我的活动中的任何手势,即使有很多东西(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;
}
});
但它不工作。我想这是因为其他人的观点正在拦截事件。
Idk是否有可能检测到活动上方的手势,就像在窗口中一样。
谢谢!
答
你可以,但它有点棘手。阅读触摸处理,尤其是onInterceptTouchEvent
,可以在父母上使用,以拦截儿童触摸。
你会在(自定义)根视图中实现该方法,然后在那里做你的手势魔法。
一些有价值的信息在这里:Android: Difference between onInterceptTouchEvent and dispatchTouchEvent?
它的工作。我只是重写我的活动中的方法“dispatchTouchEvent”。谢谢! –