#java #android #kotlin #android-recyclerview
Вопрос:
Есть ли возможность обработать событие при изменении данных представления переработчика? Я обновляю список в одной части приложения и звоню notifyDataSetChanged
. В другой части приложения, где у меня есть ссылка на представление recycler и адаптер, я хочу обработать это событие.
Ответ №1:
Чтобы получить такое событие, вам нужно переопределить onCurrentListChanged(previousList, currentList)
, как показано ниже
val myAdapter = object : ListAdapter<Type> {
override fun onCurrentListChanged(previousList: MutableList<Type>, currentList:
MutableList<Type>) {
...
}
// other overrides
}
Ленивым
private val myAdapter by lazy {
object : MyAdapter() {
override fun onCurrentListChanged(previousList: MutableList<Type>, currentList: MutableList<Type>) {
}
}
}
Комментарии:
1. @Uknowledge_1 Было бы здорово, если бы вы могли принять ответ, так как это помогло бы и другим членам сообщества. Спасибо
Ответ №2:
Существует onCurrentListChanged(previousList, currentList)
обратный вызов, который вызывается каждый раз, когда список RV изменяется. Этот обратный вызов является частью ListAdapter
. Вы можете передать свой собственный обратный ListAdapter
вызов в, а затем вызвать его в переопределенном onCurrentListChanged
.