将RecyclerView新闻传递到超级视图

时间:2018-11-02 20:41:56

标签: android android-recyclerview kotlin

我有一个RecyclerView(垂直滚动),其中ViewHolder包含RecyclerView个水平滚动。当您水平(嵌套)RecyclerView s上的项目上点击时,我希望整行都具有波纹效果。

为此,我一直在尝试覆盖触摸事件,并使其在视图堆栈中向上传递(通过在触摸事件处理程序中返回false)。此功能适用于RecyclerView以外的其他视图,但不适用于RecyclerView的效果。

如何正确地将RecyclerView上的tap事件传递到封闭的视图?

1 个答案:

答案 0 :(得分:0)

还没有找到将click事件传递到回收者视图的父视图的方法,但是重要的是使连锁反应得以发生-我能够做到。因此,当点击了视图持有人的itemView时,我会这样做:

val background = itemView.background
if (background is RippleDrawable) {
    background.setState(intArrayOf(android.R.attr.state_pressed, android.R.attr.state_enabled))
}

手动触发波纹效果。