首页 > 解决方案 > 更新后对回收站视图进行排序的好方法和一些疑问

问题描述

更新后,我在回收站视图中对项目进行排序时遇到问题。

我发现这种方法看起来很糟糕,我想知道是否有更好的方法。我也使用它向回收器视图添加新记录,但我不确定是否应该更改它是否是一个好习惯。

我在代码中的另一个大疑问是关于我如何处理适配器中的事情

通过视图持有者进行排序是否可能或更好?

我非常感谢您提供的任何帮助或建议。

方法:

在主要活动上调用函数以执行以下操作

MyList.clear()
MyList.addAll( dbHandler!!.cursor())
MyList.sortedWith(compareBy({ it.sortervalue }))
adapter.notifyDataSetChanged()

我如何处理按钮,这是一个好的做法还是一个很大的不?

在 - 的里面onBindViewHolder

p0.itemView.editButton.setOnClickListener {
    editpress()
    Log.d("myTag", "edit pressed")
}

标签: androidsqliteandroid-studiokotlin

解决方案


我通过将列表完全移动到适配器来解决它,所以我不会调用适配器来给出列表

在主要活动中是:私有 val 适配器 = 适配器(列表)

相反,我现在这样做:private val adapter = adapter () 并在创建的主要活动中

adapter.lista.addAll(dbHandler!!.cursor())

所以列表现在只在适配器内部,当我对它进行排序时,我不必再次将它传递给适配器。对其进行排序:listaPrioridades.sortByDescending { it.xxxx }

其中 xxxx 是您要排序的列。


推荐阅读