Шаблон LiveData и MVVM

Это более "концептуальный" вопрос о LiveData и шаблоне MVVM на Android: я начал кодировать приложение, в котором у меня на экране несколько кнопок для разных действий, если я правильно понял, когда пользователь нажимает одну из кнопок, ViewModel должен обработать это, а затем через LiveData обновить пользовательский интерфейс (активность / фрагмент); проблема в том, что для примерно 4 кнопок мне нужно реализовать 4 разных экземпляра LiveData, на которые подписка должна быть подписана, есть ли другое решение? До сих пор я думал о создании класса данных State и обновлении при нажатии кнопки (а затем передать экземпляр для визуализации интерфейса), это нормально? Но опять же, в упражнении у вас есть проблема, что вы должны проверить каждый атрибут класса состояния и соответственно обновить пользовательский интерфейс, так что бы вы сделали в моей ситуации?

1 ответ

Что вам нужно, это, вероятно, sealed class определяя ваши разные состояния. Я думаю, что эта средняя статья идеально соответствует тому, что вы ищете, и она очень хорошо объясняет, как использовать закрытый класс для этой цели. Надеюсь, вы найдете это полезным.

Другие вопросы по тегам