我有实现RecyclerView
的这段代码,我想添加一些手势。我想做两件事,但我不知道,因为我是新来的。
当有人单击RecyclerView
时,我想从Activity
捕获事件,然后再下到回收站。这就是为什么我从dispatchTouchEvent
返回true的原因。但这不起作用,因为调用了onTouch。
如果我们允许事件通过,则当触摸事件进入回收站(OnTouch方法)时,不会调用Activity
的{{1}} 。之所以调用它是因为事件处理会冒泡。
onTouchEvent
答案 0 :(得分:0)
您不希望回收者视图吃事件,那么您有两种方法
这就是为什么我从dispatchTouchEvent返回true
从dispatchTouchEvent返回 false ,当您在recyclerView中执行此操作时,则不会调用recyclerView的子级的dispatchTouchEvent(),因此事件甚至不会消失,因此不会发生气泡。这意味着将不调用recyclerView的onTouch / onTouchEvent或它的任何子项。直接调用Activity上的onTouch。
从onTouch()返回 false ,在这种情况下,该事件将一直持续到所有子视图为止,如果未使用它们,则将到达回收者视图,并且您从此处返回false然后将调用Activity的onTouch。
注意: 因此,您必须选择一个不能同时拥有的。