如何使用kotlin显示在recyclerview中选择的单个项目

我们如何使用kotlin标记在Recyclerview选择的单个项目。 当我选择一个项目,然后点击其他项目,那么以前选择的项目应该被取消选择。这里是我的适配器类在kotlin:..

  class ListAdapter(var context: Context, var list: ArrayList) : RecyclerView.Adapter() { override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): MyViewHolder { val v = LayoutInflater.from(parent?.context).inflate(R.layout.list_item, parent, false) return MyViewHolder(v) } override fun getItemCount(): Int { return list.size } override fun onBindViewHolder(holder: MyViewHolder?, position: Int) { holder?.bindItems(list[position]) } class MyViewHolder(view: View) : RecyclerView.ViewHolder(view){ fun bindItems(items: ListModel) { itemView.txt_que.text = items.que itemView.txt_ans.text = items.ans itemView.txt_sr_no.text = items.srNo } }` 

2 Solutions collect form web for “如何使用kotlin显示在recyclerview中选择的单个项目”

  if (mPosition == position) { //set selected here } else { //set unselected here } holder.parentView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { mPosition = position; notifyDataSetChanged(); } }); 

在onBindViewholder中写上面的代码,并在适配器类中声明mPosition为全局的intvariables

试试这个: – 在你的ListModel类中取一个variables

 var selected:boolean = false 

然后在设置listModel项目时将此值设置为false

 for(int i=0;i 

当您从列表中选择任何项目时,请调用此方法,然后为选定位置设置selected = true,并刷新适配器列表。

在你的适配器中检查这个选定的值,并相应地在你的bindItems方法中设置checkbox的值

  itemView.checkBox.selected = items.selected//this will set your checkbox selected value 
  • 什么是Kotlin意图的概念?
  • 将parameter passing给kotlin中的自定义getter
  • Spring引导+ kotlin runApplication (* args)无法启动
  • 如何管理Kotlin中的unit testing资源,如启动/停止数据库连接或嵌入式弹性搜索服务器?
  • 你如何编写types参数的类的二级构造函数?
  • 将Kotlin下载到Android Studio时出现与证书相关的错误
  • 如何处理从Java迁移到Kotlin的generics边界?
  • Instrumentation测试将作为Android Studio 3(空测试套件)上的Local Unit测试运行,
  • 在lambda中使用return?
  • 如何使用Android上的Kotlin从url解析JSON?
  • 如何在Kotlin中手动解析JSON?
  • Kotlin language will be the best programming language for Android.