繁体   English   中英

kotlin 中的 recyclerview 仅返回 1 个项目

[英]recyclerview in kotlin returns only 1 item

我不知道为什么它只显示一个项目。

class MyRecyclerviewAdapter : RecyclerView.Adapter<MyRecyclerviewAdapter.MyViewHolder>() {
    val mData = arrayListOf<CardviewItem>(CardviewItem("TEST", "TEST1"), CardviewItem("TEST", "TEST2"), CardviewItem("AAA", "ABBB"))

    inner class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        val imageview_cardview = itemView.findViewById<AppCompatImageView>(R.id.imageview_cardview)
        val textview_cardview = itemView.findViewById<TextView>(R.id.textview_cardview)
    }

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewHolder {
        return MyViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.cardview_items, parent, false))
    }

    override fun getItemCount(): Int {
        return mData.size
    }

    override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
            holder.imageview_cardview.setImageResource(R.drawable.ic_android_black_24dp)
            holder.textview_cardview.setText(mData[position].text)
    }
}

这里的CardviewItem是什么? 如果CardviewItem是一个包含两个 String 类型字段的模型类,您可以像这样初始化它:

val list = ArrayList<CardviewItem>()

然后你可以得到这样的值:

list[position].field1
list[position].field2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM