选择卡片视图时如何更改卡片的背景颜色?

时间:2017-11-22 18:48:30

标签: android android-recyclerview kotlin

我已经有东西告诉我选择了哪张卡但是如果我想设置itemview的背景颜色它不会改变我的CardView它会改变我{{1}的背景颜色在那个地方。

RecyclerView

1 个答案:

答案 0 :(得分:0)

好吧,我自己找到了答案,但对于每个像我在这里一样挣扎的人来说,答案是:

if (selectedPosition == position && position != exerciseList.size) {
        val card_view = holder.itemView.findViewById<CardView>(R.id.boxesExercise)
        card_view.setCardBackgroundColor(Color.parseColor("#d7263d"))
    }
    else {
        if(exerciseList.size != 0){
            val card_view = holder.itemView.findViewById<CardView>(R.id.boxesExercise)
            if(card_view != null){
                card_view.setCardBackgroundColor(Color.parseColor("#0197f6"))
            }

        }

    }

您可以通过CardView找到包含ID的holder.itemView,因为CardView是holder.itemView的Child

我在之前的尝试中做错了,因为我尝试将Backgroundcolor直接应用于holder.itemView而不是CardView

希望这有助于某人!