如何在使用Android分页库时添加复选框&;房间
我正在使用Android分页库+房间库如何在使用Android分页库时添加复选框&;房间,android,kotlin,android-jetpack,android-paging,android-paging-library,Android,Kotlin,Android Jetpack,Android Paging,Android Paging Library,我正在使用Android分页库+房间库 @Entity data class Customer { @PrimaryKey(autoGererate = true) val id: Long, val name: String } @Dao interface CustomerDao { @Query("SELECT * FROM Customer") fun get(): DataSource.Factory<Int, Customer> }
@Entity
data class Customer {
@PrimaryKey(autoGererate = true)
val id: Long,
val name: String
}
@Dao
interface CustomerDao {
@Query("SELECT * FROM Customer")
fun get(): DataSource.Factory<Int, Customer>
}
如何将DataSource.Factory从房间db的dao更改为CheckableCustomer
我想将Customer更改为CheckableCustomer并使用PagedListAdapter(回调)
或者,使用room数据库datasource和checkbox有什么好的解决方案吗
// in fragment
viewModel.selected.observe(lifecyclerOwner, Observer {
adapter.selectedCustomers = it
})
// in adapter
var selectedCustomers: List<Customer>()
set(value) {
for (i in until itemCount) {
getItem(i)?.id?.let {
if (selected item id is changed) {
notifyItemChanged(i)
}
}
}
}
data class CheckableCustomer {
val customer: Customer,
val isChecked: Boolean
}