RecyclerView.ViewHolder的adapterPosition属性被废弃了
RecyclerView.ViewHolder
中的 adapterPosition
属性在 API level 30(Android 11)中被标记为已废弃。
adapterPosition
是用于获取当前 ViewHolder 在 Adapter 中的位置的属性。然而,在某些情况下,adapterPosition
可能会返回不正确的位置,例如在 ViewHolder 已经被回收并重用后。为了解决这个问题,官方推荐使用 bindingAdapterPosition
或 absoluteAdapterPosition
属性来获取 ViewHolder 在 Adapter 中的位置。
bindingAdapterPosition
属性是用于在使用数据绑定时获取当前 ViewHolder 在 Adapter 中的位置的。absoluteAdapterPosition
属性是用于在 RecyclerView 中使用多个 Adapter 时获取当前 ViewHolder 在全局 Adapter 中的位置的。
需要注意的是,这两个属性也有可能返回不正确的位置,因此在使用时需要进行适当的判断和处理。
简单修改如下,一个简单的代码提交图对比: