recyclerview в kotlin возвращает только 1 товар - PullRequest
1 голос
/ 09 февраля 2020

Не знаю, почему в нем представлен только один предмет.

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)
    }
}

1 Ответ

2 голосов
/ 09 февраля 2020

Что такое CardviewItem здесь? Если CardviewItem является классом модели, содержащим два поля типа String, вы можете инициализировать его следующим образом:

val list = ArrayList<CardviewItem>()

Тогда вы можете получить значение следующим образом:

list[position].field1
list[position].field2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...