我将 RecyclerView ViewHolder 作为复选框,单击该复选框后,我需要取消选择已选择的其他复选框,但它没有发生,更改不会反映在视图中。
单击时在 onBindViewHolder 中初始化回收器项目单击,更新槽数据并调用notifiedItemChanged,但占位符未更新,我是否错过了更新视图持有者的任何内容。
override fun onBindViewHolder(
holder: BookingSlotListItemViewHolder,
position: Int,
payloads: MutableList<Any?>
)
Run Code Online (Sandbox Code Playgroud)
class BookingSlotListAdapter(
private val hourSlotHolder: RecyclerView,
private val bookingBtn: TextView
) : RecyclerView.Adapter<BookingSlotListItemViewHolder>() {
private val bookingSlots = ArrayList<BookingSlotAvailability>()
private var lastSelected: Int? = null
private val bookingHourItemAdapter = BookingHourItemAdapter(bookingBtn)
private val NOT_SELECTED_FOR_BOOKING = 0
private val AVAILABLE_FOR_BOOKING = false
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BookingSlotListItemViewHolder {
val layoutInflater: LayoutInflater = LayoutInflater.from(parent.context)
val view = layoutInflater.inflate(R.layout.booking_time_slot, parent, false)
return BookingSlotListItemViewHolder(view)
}
override …Run Code Online (Sandbox Code Playgroud)