как обновить данные через Room и вывести какое-то сообщение пользователю после обновления - PullRequest
0 голосов
/ 07 июня 2019

Мы хотим показать какое-то сообщение пользователю после обновления, используя код, как показано ниже. Код не прошел в стресс-тесте. Ошибка, показывающая

IllegalArgumentException: не найдено подходящего родителя из данного представления. Пожалуйста, предоставьте действительный вид

для закусочной части.

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

AppExecutos - это то же самое, что и , это один.

mAppExecutors.diskIO().execute(() -> {
    boolean result = mViewModel.update(...);
    if (result) {
        mAppExecutors.mainThread().execute(() -> {
            Snackbar snackbar = Snackbar.make(getView(),"Updated!",Snackbar.LENGTH_SHORT);
            snackbar.show();
        });
    } else {
        mAppExecutors.mainThread().execute(() -> {
            Snackbar snackbar = Snackbar.make(getView(),"Failed!",Snackbar.LENGTH_SHORT);
            snackbar.show();
        });
    }
});
...