Я использую следующую (нехорошую) структуру, чтобы попытаться получить доступ к различным компонентам, имена которых последовательным образом повторяются через несколько просмотров карт, которые показывает мое приложение, которые в основном повторяются:
for (x in 0 until calendarView.selectedDates.count())
{
if (x==0)
{
cardView1.visibility=View.VISIBLE
if (horaEntrada1.text.contains("N/A"))
{
spinnerMomento1.isVisible=false
}
textviewdiaSeleccionado1.text= calendarView.selectedDates[0].toString()
}
if(x==1)
{
cardView2.visibility=View.VISIBLE
if (horaEntrada2.text.contains("N/A"))
{
spinnerMomento2.isVisible=false
}
textviewdiaSeleccionado2.text= calendarView.selectedDates[1].toString()
}
}
Это усложняет вещи, когда нужно добавить больше элементов или больше карт.
Мне нужно решение, которое могло бы работать примерно так:
Давайте представим, что запись "name_var" + num разрешеначтобы определить компонент, который хочет принять, если бы это было возможно, следующий код был бы эквивалентен:
for (x in 0 until calendarView.selectedDates.count())
{
cardView+(x+1).visibility=View.VISIBLE
if (horaEntrada+(x+1).text.contains("N/A"))
{
spinnerMomento+(x+1).isVisible=false
}
textviewdiaSeleccionado+(x+1).text= calendarView.selectedDates[x].toString()
}
Это, несомненно, привело бы к гораздо более менее грязному коду.
Как можно сделать что-то вроде моего изобретенного кода?