У меня в коде есть очень большой recyclerView с большим количеством операторов if в onBindViewHolder: иногда позиции с 1 по 5 будут иметь это представление, иногда они будут иметь другое представление, а иногда - другие представления. У меня есть более 20 позиций в некоторых случаях, а некоторые позиции иногда имеют 3 варианта.
Могу ли я создать класс для каждого указанного c варианта, а затем написать что-то вроде
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
if (variant 1) {
Variant1Class.onBindViewHolder(holder, position)
}
else if (variant 2) {
variant2Class.onBindViewHolder(holder, position)
}
else {
variant3Class.onBindViewHolder(holder, position
}
}
Это Я могу разделить логи c на несколько файлов. Проблематично ли c передавать переменную "holder"? Неужели это проблематично c по какой-то другой причине?
Если у вас есть другое решение, у меня все уши!
Лучший