android - 更新后对回收站视图进行排序的好方法和一些疑问
问题描述
更新后,我在回收站视图中对项目进行排序时遇到问题。
我发现这种方法看起来很糟糕,我想知道是否有更好的方法。我也使用它向回收器视图添加新记录,但我不确定是否应该更改它是否是一个好习惯。
我在代码中的另一个大疑问是关于我如何处理适配器中的事情
通过视图持有者进行排序是否可能或更好?
我非常感谢您提供的任何帮助或建议。
方法:
在主要活动上调用函数以执行以下操作
MyList.clear()
MyList.addAll( dbHandler!!.cursor())
MyList.sortedWith(compareBy({ it.sortervalue }))
adapter.notifyDataSetChanged()
我如何处理按钮,这是一个好的做法还是一个很大的不?
在 - 的里面onBindViewHolder
p0.itemView.editButton.setOnClickListener {
editpress()
Log.d("myTag", "edit pressed")
}
解决方案
我通过将列表完全移动到适配器来解决它,所以我不会调用适配器来给出列表
在主要活动中是:私有 val 适配器 = 适配器(列表)
相反,我现在这样做:private val adapter = adapter () 并在创建的主要活动中
adapter.lista.addAll(dbHandler!!.cursor())
所以列表现在只在适配器内部,当我对它进行排序时,我不必再次将它传递给适配器。对其进行排序:listaPrioridades.sortByDescending { it.xxxx }
其中 xxxx 是您要排序的列。
推荐阅读
- javascript - Javascript滚动动画切断页面
- python - 尝试在 Python 中插入直方图函数的输出
- amazon-web-services - 我们可以在 AWS EC2 实例中部署多个服务吗
- xml - 应用 XSL 转换后转义特殊字符
- c# - 从 Visual Studio 连接到我的 Mac 时出现连接错误
- html - 溢出:无法识别隐藏
- sql - 有没有办法查看PostgreSQL的后端处理?
- windows - 如何在 MinGW/MSYS2 上安装静态 libz.dll.a、libssl.dll.a 等?
- javascript - Javascript 内容弹出按钮
- jupyter-notebook - 如何在 pytorch 中将第二个 gpu 设置为 juptyer 笔记本中的默认值?