viewHolder.itemView.setOnClickListener { val position = viewHolder.adapterPosition val id:String val name:String id = cangkuList[position].id name = cangkuList[position].name }这段代码中加入更改颜色的代码
时间: 2024-02-10 19:08:27 浏览: 117
listview点击后改变item颜色
你可以在点击事件中加入更改颜色的代码,例如:
```kotlin
viewHolder.itemView.setOnClickListener {
val position = viewHolder.adapterPosition
val id = cangkuList[position].id
val name = cangkuList[position].name
// 改变item的背景颜色
viewHolder.itemView.setBackgroundColor(ContextCompat.getColor(viewHolder.itemView.context, R.color.colorAccent))
// 改变item内TextView的文本颜色
viewHolder.itemView.findViewById<TextView>(R.id.item_text)
.setTextColor(ContextCompat.getColor(viewHolder.itemView.context, R.color.white))
}
```
在点击事件中,先获取点击的item的位置、id和name。然后,通过`viewHolder.itemView`获取item的根布局,即整个item的视图,调用`setBackgroundColor()`方法改变item的背景颜色。最后,通过`findViewById()`方法获取item内的TextView,并调用`setTextColor()`方法改变文本颜色。注意,在获取颜色时需要使用`ContextCompat.getColor()`方法,这样可以兼容不同版本的Android系统。
阅读全文