Я создал массив до размера списка. Каждый элемент RecyclerView имеет EditText.
val array = arrayOfNulls<String>(listSize)
Нам нужно знать позицию EditText для добавления в массив. Измените интерфейс следующим образом:
interface ExaminationListener {
fun addAnswer(text: String, position: Int)
}
function addAnswer:
override fun addAnswer(text: String, position: Int) {
array[position] = text // we add every changes to the array.
}
Это использование более полезно. Другие методы нам не нужны:
textBox.doAfterTextChanged {
examinationListener.addAnswer(it.toString(), position) // you can use adapterPosition if that is in Viewholder
}
Создаем предложение из элементов массива. Вы можете увидеть ваше предложение полностью:
val sentence = array.filterNotNull().joinToString (separator = " ") { it -> it }
Log.d("Sentence" , sentence)