android - 一个回收站视图的两个适配器
问题描述
我有点进退两难。我会尽量简单地解释它。
我的应用程序有一个页面,我通过回收站视图(由蓝色矩形表示)显示帖子的提要:
这很简单,因为我PostAdapter
为处理所有子视图逻辑的回收器视图创建了一个类。
现在我有另一个要求,我需要一个在回收站视图顶部显示帖子(蓝色矩形)的页面,然后在其下方显示对该帖子的回复(由红色矩形表示):
请记住,蓝色和红色矩形是简化的。这些视图中的每一个都有数十个子视图和数百行逻辑代码。
我ReplyAdapter
为此页面上的回收器视图创建了另一个类 ,它处理回复的所有逻辑。
我现在的问题变成了:我怎样才能在回收站视图的顶部显示帖子(蓝色矩形)?
我知道我可以修改ReplyAdapter
以允许多种类型(如此处所述),但因为它们已经是两个独立的类,每个类都有自己的复杂逻辑,所以这对我来说不是真的可能性。
所以我的问题是:有没有办法让两个适配器的逻辑分开,同时仍然能够在同一个回收器视图下使用它们?如果是这样,怎么做?如果没有,我该怎么办?
解决方案
如果您的用例正是这样 - 来自PostAdapter
顶部的数据,来自ReplyAdapter
下面的数据 - 那么androidx.recyclerview.widget.ConcatAdapter可能会有所帮助。顾名思义,它连接适配器。
推荐阅读
- scala - 在任意 scala 对象中调用私有方法
- docker - 与 docker-compose.yml 一起使用时未执行 Dockerfile 中的命令
- javascript - 像时刻一样从对象格式化 Luxon 日期
- javascript - 有没有办法使用 Puppeteer 定位特定元素并在将 html 转换为 pdf 时保留 CSS?
- python - 将库导入 Python 文件
- postgresql - postgresql/pgAdmin - 接受 start_date 和 end_date 参数作为查询运行的输入
- visual-studio-code - 该进程试图写入一个不存在的管道
- python - 调试 Python 时调用 Stack empty
- python - 减少创建 BeautifulSoup 对象时的开销
- amazon-aurora - Postgres (AWS Aurora) 未强制执行唯一索引/约束