首页 > 解决方案 > Android Kotlin - RecyclerView - 获取回收项目的位置

问题描述

正如标题所说,我需要一个监听器来告诉我被回收物品的位置。

到目前为止,我只找到了如何获得回收物品的持有人:

override fun onViewRecycled(holder: ViewHolder) {
    super.onViewRecycled(holder)  
}

我不明白为什么它也不返回它该死的位置

标签: javaandroidkotlinandroid-recyclerview

解决方案


您可能希望根据您的用例使用任何一种方法来获取要回收的视图的位置以创建新视图。

override fun onViewRecycled(holder: ViewHolder) {
    super.onViewRecycled(holder)  

    holder.layoutPosition

    holder.absoluteAdapterPosition

    holder.bindingAdapterPosition
}
    

holder.layoutPosition:根据最新的布局传递返回 ViewHolder 的位置。

holder.absoluteAdapterPosition:返回此 ViewHolder 表示的项目相对于 RecyclerView 的 Adapter 的 Adapter 位置。

holder.bindingAdapterPosition返回此 ViewHolder 表示的项目相对于绑定它的适配器的适配器位置。


推荐阅读