android - 在 Kotlin 中编写一个适用于空列表情况的 RecyclerView 适配器
问题描述
我正在处理一个在RecyclerView
. 到目前为止,可以添加和删除元素。用户还可以通过几个 popUpWindows 更改每个元素的内容。但是,MyViewHolder
由于s很多,上课时间很长onClickListener
。因此,我将MyRecyclerViewAdapter
课程与其他活动放在一个单独的文件中。现在,
MyViewHolder
与许多点击侦听器(在 Adapter 对象中完成大部分工作)保持长时间的类是一个好习惯,还是我应该MyRecyclerViewAdapter
以某种方式检索相关数据并在部分内执行“删除、添加、编辑文本”工作onCreate
?当所有元素都被删除时,什么是最有效、最简单和最快速的解决方案来显示一个全新的和不同的视图?我尝试了 VISIBLE, GONE 解决方案,但 MyAdapter 在一个单独的文件中,我不知道如何与 onCreate 部分通信以传输动态列表的实时大小。
解决方案
1/ 如果您的操作是与列表中的项目组件交互(添加、删除、编辑、获取内容...),您应该将该功能放在适配器中,单击 ViewHolder 应该只给出其在适配器中的位置。此处的解决方案:Kotlin 中的 RecyclerView itemClickListener
2/ 为什么使用 VISIBLE, GONE ?当您删除一个项目时,意味着您删除了数据列表中的项目,因此只需重新加载视图,适配器将自动显示剩余数据
推荐阅读
- sql - 在一个范围内连接属性匹配的表
- vba - VBA:excel数据到html表条目
- ruby-on-rails - 更新 Heroku Review 应用环境/配置变量
- r - 使用“曲线”绘制函数:一个棘手的表达式?
- arraylist - 当添加到 ArrayList 中的变量发生变化时,ArrayList 会自行更新吗?
- mysql - 如何通过 JDBC 有效地将批处理请求发送到 Google App Script 中的 MySQL 数据库?
- hyperledger-fabric - 恢复 docker 容器的状态
- android - 在Android Studio中使用Context调用PackageManager
- c++ - DLL 导出导致唯一指针问题
- java - 删除链表中的节点不删除正确的节点