如何在android中的视图下获取视图的click事件

时间:2015-04-03 20:17:25

标签: android layout overlay onclicklistener android-recyclerview

从某些日子开始,我想知道如何将点击事件委托给位于另一个视图之下的视图。重要的是,叠加视图仍然必须接收点击事件。

情况是这样的:

我有一个包含物品的RecyclerView。 RecyclerView采用全宽,每边都有一个填充,因此过卷动画可以在整个宽度上很好地展开。 我有一个工具栏,它放在RecyclerView(扩展样式)下。工具栏在窗口的右上边缘有一个菜单项。

现在我在这个菜单项上没有收到任何点击事件,因为RecyclerView与项目重叠。但是如果我考虑填充物,则RecyclerView的项目与菜单项不重叠。但由于填充物没有边距,因此RecyclerView与菜单项重叠。但我讨厌将填充更改为边距,因为这样就会在两侧(左侧和右侧)剪切过度滚动动画。

您对如何将过卷动画扩展到全宽,或者如何通过我的RecyclerView的填充委托点击事件有什么建议吗?

感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:0)

这对我有用。

  mRecyclerView.setOnTouchListener((v, event) -> {
            MotionEvent e = MotionEvent.obtain(event);
            mHeaderLayout.dispatchTouchEvent(e);
            e.recycle();
            return false;
        });