小编far*_*dad的帖子

kotlin 中具有不同视图类型的 Android recyclerview

我在Kotlin 中创建了一个具有多种视图类型的 RecyclerView(技术动态方法调度或运行时多态性。),现在我有ViewHolder如下图所示

abstract class BaseViewHolder<T> internal constructor(itemView: View) : RecyclerView.ViewHolder(itemView){

    abstract fun bind(_object:T)
}
Run Code Online (Sandbox Code Playgroud)

我有如下图所示的适配器

class activation_items_main_activity (list: List<out BaseModel>,context: Context):RecyclerView.Adapter<BaseViewHolder<*>>() {

    private var mList: List<out BaseModel>? = null
    private var mInflator:LayoutInflater ? = null

    init {

        this.mList = list
        this.mInflator = LayoutInflater.from(context)

    }

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BaseViewHolder<*> {

        when (viewType)
        {
            Constant_ViewType_RecyclerView.ViewType.ListOfActivation_Type1 -> return ListOfActivation_MainActivity_Holder(mInflator!!.inflate(R.layout.activities_layout_item,parent,false))
            Constant_ViewType_RecyclerView.ViewType.ListOfActivation_Type2 -> return ListOfActivation_MainActivity2_Holder(mInflator!!.inflate(R.layout.activities_layout_items_type2,parent,false))
        }

        return null // -----> **problem return null** 

    }

    override fun getItemCount(): …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-recyclerview

4
推荐指数
1
解决办法
4337
查看次数

标签 统计

android ×1

android-recyclerview ×1

kotlin ×1