У меня есть первый вид деятельности, когда у пустого textview
пользователя есть щелчок по этому textview
, чтобы выбрать местоположение из списка местоположений, поэтому для того, чтобы пользователь щелкнул по выбору местоположения textview
, он откроет список местоположений с помощью * 1004.*.
Когда пользователь выбирает местоположение (может выбрать несколько местоположений) и нажимает «Готово», все выбранные местоположения будут отображаться на активности один textView
со всеми выбранными отмеченными значениями textview
теперь, когда пользователь нажимает на то же textview
чтобы добавить больше местоположения, чем в recylerview
список, все предыдущие отмеченные пункты должны быть проверены.Я не получаю все предыдущие выбранные флажки.
Я не понимаю, как этого добиться.Мне нужно выбрать все старые checkbox
, и пользователь может установить еще один новый флажок, если нажать на тот же textview
.Пожалуйста, помогите мне получить это.Код Java также будет полезен для меня
Ниже приведен код моего адаптера recylerView: -
class SelectMedicineAdapter (val medicineList : ArrayList<String>, val context: Context) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
var selectedCheckBoxMedicineList : ArrayList<String> = ArrayList()
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
holder.itemView.textViewSelectMedicineName.text = medicineList.get(position)
holder.itemView.checkboxSelectMedicine.setOnCheckedChangeListener { buttonView, isChecked ->
val itemText = medicineList.get(position)
if (isChecked) {
selectedCheckBoxMedicineList.add(itemText)
} else {
selectedCheckBoxMedicineList.remove(itemText)
}
}
}
fun getSelectedMedicineList(): ArrayList<String> {
return selectedCheckBoxMedicineList
}
override fun getItemCount(): Int {
return medicineList.size
}
override fun onCreateViewHolder(holder: ViewGroup, p1: Int): RecyclerView.ViewHolder {
val v= (LayoutInflater.from(context).inflate(R.layout.row_select_medicine_adapter,holder,false))
return ViewHolder(v)
}
class ViewHolder (itemView: View): RecyclerView.ViewHolder(itemView){
var textViewSelectMedicineName = itemView.textViewSelectMedicineName
var imageViewPlusButton = itemView.imageViewPlusButton
var imageViewMinusButton = itemView.imageViewMinusButton
var checkboxSelectMedicine = itemView.checkboxSelectMedicine
}
}