ListAdapter لا يقوم بتحديث العنصر في RecyclerView: البيانات تتغير لكن واجهة المستخدم لا تعاد رسمها
مرحباً بالجميع! أنا مبتدئ في تطوير Kotlin و Android. أستخدم ListAdapter مع RecyclerView، لكني واجهت مشكلة غريبة: عندما أغير البيانات في القائمة وأستدعي submitList()، لا يتم تحديث العناصر على الشاشة. إليك الكود الخاص بي:
```kotlin
data class Item(val id: Int, var title: String, var isCompleted: Boolean)
class ItemDiffCallback : DiffUtil.ItemCallback- () {
override fun areItemsTheSame(oldItem: Item, newItem: Item): Boolean {
return oldItem.id == newItem.id
}
override fun areContentsTheSame(oldItem: Item, newItem: Item): Boolean {
return oldItem == newItem
}
}
class ItemAdapter : ListAdapter
- (ItemDiffCallback()) {
// ... ViewHolder و bind
}
// في Activity
val items = mutableListOf(
Item(1, "المهمة 1", false),
Item(2, "المهمة 2", true)
)
adapter.submitList(items)
// أحاول تحديث العنصر
items[0].isCompleted = true
adapter.submitList(items) // لا يعمل!
```
أنا م