我一直在学习使用RecyclerView
. 我学习如何使用它的主要目的是我需要实现一个水平列表,也就是说,当将设备转为横向模式(水平)时,它会显示如下:
经过大量搜索,我找到了能够实现它的详细方法(如何创建水平滚动RecyclerView
,这里),但我遇到了另一个问题。del 项RecyclerView
大于设备的高度(横向,横向),所以我需要同时创建一个垂直和水平滚动。
我已经查看了 Android Developer LayoutManager 类的方法,但我的知识还不够高,无法理解大多数存在的方法,我还尝试将另一个水平 RecyclerView 与垂直 RecyclerView 中的所有内容,但它给出了我发现一个错误IllegalStateException: RecyclerView has no LayoutManager
,作为解决方案,删除所有<View.../>
XML文件,但它没有给出任何结果,当然,我已经搜索了数千个互联网页面,但可以看出没有人考虑过这个这是可能的。
澄清一下,我对这个条目的要求是有人告诉我这是否可能,以及他们是否对如何实现它有可能的想法(尽管我不知道是否可能)以及是否是不可能,解释一下原因。
当然有可能,您要做的就是您调查的内容,创建一个
LinearLayoutManager
包含以下内容的水平RecyclerView
:哪些是横向回收的视图:
并在每个水平元素内添加一个
RecyclerView
,它将包含垂直回收的视图:
我对我在应用程序中遇到的所有问题感到非常生气,以至于我没有想到最简单的解决方案。
事实证明,一个 RecyclerView 由两个 XML 文件组成,一个是声明 RecyclerView 的主要文件,另一个是所述 RecyclerView 项的内容。
最简单和最愚蠢的解决方案是将 RecyclerView 包装在 ScrollView 中。因此,借助 ScrollView,我将能够同时垂直移动所有项目,并且借助水平模式下的 RecyclerView,我还能够水平移动项目。
我将 RecyclerView 的主文件留在这里作为示例:
activity_main.xml