目前源码中BaseQuickAdapter中实现:
abstract class BaseQuickAdapter<T : Any, VH : RecyclerView.ViewHolder>(
open var items: List = emptyList()
) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
}
adapter重载onViewRecycled方法时:
override fun onViewRecycled(holder: RecyclerView.ViewHolder) {
super.onViewRecycled()
}
这样需要对holder进行转换才能得到对应的ViewBinding,建议继承RecyclerView.Adapter和之前版本实现一样传入泛型VH,改成:
abstract class BaseQuickAdapter<T : Any, VH : RecyclerView.ViewHolder>(
open var items: List = emptyList()
) : RecyclerView.Adapter() {
}
1条答案
按热度按时间6ojccjat1#
这个实在没有办法,因为 BaseQuickAdapter 还有内部的 StateLayoutVH,不能在class处指定为泛型VH