【发布时间】:2022-11-02 00:18:46
【问题描述】:
class Split_recycler_adapter (var arrayList: ArrayList<Split_recycler_model>) :
RecyclerView.Adapter<Split_recycler_adapter.Viewholder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): Viewholder {
val v = LayoutInflater.from(parent.context).inflate(R.layout.changesplit_recycler_item,parent,false)
return Viewholder(v)
}
override fun onBindViewHolder(holder: Viewholder, position: Int) {
val split_modal = arrayList[position]
var checked = true
Log.e("position_outside_loop->","$position")
holder.split_text.text = split_modal.getText()
holder.split_text.setOnClickListener{
if(checked){
Log.e("check->","Working")
holder.split_text.setBackgroundResource(R.drawable.green_button_gradient)
holder.split_text.setTextColor(Color.parseColor("#454546"))
checked = false
}else{
holder.split_text.setBackgroundResource(R.drawable.dropdown_gradient)
holder.split_text.setTextColor(Color.parseColor("#A4A4A4"))
checked = true
}
}
}
override fun getItemCount(): Int {
return arrayList.size
}
class Viewholder(Itemview: View) : RecyclerView.ViewHolder(Itemview) {
val split_text : TextView = Itemview.findViewById(R.id.split_text)
}
}
此代码可帮助我在单击时更改按钮的背景,并在再单击一次时恢复背景,但这不是我想要的确切内容,我需要在单击时切换背景,当单击完成时它应该想要要删除另一个按钮的背景,一次只能突出显示一个按钮,如果有人知道解决方案,请帮助我
【问题讨论】: