Ошибка установки привязки базы данных Android MVVM в выпуске editext - PullRequest
0 голосов
/ 30 ноября 2018

В соответствии с нашей структурой я использую архитектуру MVVM с привязкой данных.Работает нормально, и я создаю страницу входа.я хочу установить ошибку в Editext при нажатии кнопки отправки, поэтому я использовал этот код внутри класса модели представления -

 public boolean isEmailAndPasswordValid(String email, String password) {
        // validate email and password
        if (TextUtils.isEmpty(email)) {
            return false;
        }
        if (!CommonUtils.isEmailValid(email)) {
            return  false;
        }
        if (TextUtils.isEmpty(password)) {
            return  false;
        }
        return  true;
    }

теперь я хочу установить ошибку при нажатии кнопки входа, идентификатор которой существует внутри Activity класс, как я могу получить идентификатор представления внутри класса viewmodel.я думаю, что будет плохой идеей передать объект связывания внутри класса viewmodel, так как я могу достичь этого?

1 Ответ

0 голосов
/ 30 ноября 2018

Вы можете использовать LiveData и вместо того, чтобы возвращать true или false из вашего метода isEmailAndPasswordValid в вашем классе viewmodel, вы можете вместо этого публиковать значения в реальных данных.

Таким образом, вместо того, чтобы возвращать true или возвращать false, вы делаете myLiveData.postValue (true) или myLiveData.postValue (false).Таким образом, вы можете наблюдать эти liveData в своем представлении, и после изменения значения данных в реальном времени вы можете соответственно изменить пользовательский интерфейс.Для получения дополнительной информации смотрите https://developer.android.com/topic/libraries/architecture/livedata

Надеюсь, это поможет!:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...