Совместное использование общей логики состояния между различными обработчиками намерений MVI.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Совместное использование общей логики состояния между различными обработчиками намерений MVI.

Сообщение Anonymous »

При разработке приложения для Android с архитектурой MVI я столкнулся с проблемой. У меня есть экраны, которые постоянно используют одни и те же намерения. Например, UserScreen и Search Screen имеют свои собственные классы, в которых хранятся намерения. Однако на некоторых экранах намерения могут дублироваться, например, для popbackstack или перехода на одну и ту же страницу. Как решить эту проблему?

Примеры кода:

Код: Выделить всё

sealed class SettingIntent{
data class toUserScreen(val id: Int) : SettingIntent()

data class BecomeAMaster(val status: StatusOfUser) : SettingIntent()
}

Код: Выделить всё

sealed class SearchIntents {
data class ChangeText(val text: String) : SearchIntents()
object GetData : SearchIntents()
object NavigateToBack : SearchIntents()
data class NavigateToUserInfo(val id: Int) : SearchIntents()

object OpenFilters : SearchIntents()
object CloseFilters : SearchIntents()

object ApplyFilters : SearchIntents()
object ResetFilters : SearchIntents()
data class FilterAction(val action: FilterIntent) : SearchIntents()

}
Как видите, навигация повторяется, и это происходит на многих экранах.

Подробнее здесь: https://stackoverflow.com/questions/798 ... t-handlers
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»