BaseRecyclerViewAdapterHelper icon indicating copy to clipboard operation
BaseRecyclerViewAdapterHelper copied to clipboard

BaseQuickAdapter继承传入泛型VH,以便使用RecyclerView重载方法onViewAttachedToWindow、onViewRecycled等

Open skyCracks opened this issue 1 year ago • 2 comments

目前源码中BaseQuickAdapter中实现: abstract class BaseQuickAdapter<T : Any, VH : RecyclerView.ViewHolder>( open var items: List<T> = 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<T> = emptyList() ) : RecyclerView.Adapter<VH>() {

}

skyCracks avatar Dec 23 '23 08:12 skyCracks

这个实在没有办法,因为 BaseQuickAdapter 还有内部的 StateLayoutVH,不能在class处指定为泛型VH

limuyang2 avatar Jan 04 '24 08:01 limuyang2