当前位置:  开发笔记 > Android > 正文

嵌套的RecyclerView,如Google Play商店应用

如何解决《嵌套的RecyclerView,如GooglePlay商店应用》经验,为你挑选了1个好方法。

我目前正致力于复制Play商店应用中实现的UI模式.为了实现这样的行为,我使用了Vertical RecyclerView作为外部视图,并RecyclerView在外部Vertical的适配器内添加了一个水平RecyclerView.

我目前面临的问题是当外部RecyclerView滚动时,内部水平RecyclerView不能捕捉到滚动事件,但是当外部RecyclerView不滚动时,我们可以RecyclerView平滑地滚动水平.

如果有人可以提供帮助,请留下您的评论.Cou可以测试Play商店中的功能RecyclerView,即使外部RecyclerView滚动,也可以启用内部水平滚动.

Play商店应用:

链接到图像



1> Reaz Murshed..:

这是实现此类的教程RecyclerView。您也可以考虑查看github存储库。

这个想法是RecyclerView当内部RecyclerView被触摸时禁用外部的触摸检测。见执行此父RecyclerView适配器类。

// Disable touch detection for parent recyclerView if we use vertical nested recyclerViews
private View.OnTouchListener mTouchListener = new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        v.getParent().requestDisallowInterceptTouchEvent(true);
        return false;
    }
}; 

然后将触摸侦听器设置为视图。

view.findViewById(R.id.recyclerView).setOnTouchListener(mTouchListener);

推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有