Как изменить формат строки обзора переработчика из-за изменения в liveata? - PullRequest
0 голосов
/ 09 апреля 2019

У меня есть стандартная настройка приложения (Activity, ViewModel, Repository). Активность содержит RecyclerView. RecyclerView имеет адаптер. В своей деятельности я обновляю RecyclerView, наблюдая за объектом LiveData:

 mQuizViewModel.getCurrentQuizTask().observe(this, new Observer<QuizTask>() {
            @Override
            public void onChanged(QuizTask quizTask){
                adapter.setAnswers(quizTask.getAnswers());
                }
        });

Если пользователь нажмет любой элемент моего RecyclerView, quizTask будет изменен и, в свою очередь, вызовет событие onChanged. В зависимости от того, какой элемент пользователь нажал, я хочу изменить цвет шрифта для нескольких элементов RecyclerView. Для этого мне нужна ссылка на каждую строку из вышеупомянутого метода наблюдения в Activity. Как я могу решить эту проблему?

1 Ответ

0 голосов
/ 10 апреля 2019

Я решил проблему довольно легко.Я меняю цвет в методе адаптера onBindViewHolder.Я добавил поле в классе объекта, который передается адаптеру через

adapter.setData(DataToPass)

. В методе onBindViewHolder я проверяю с дополнительной информацией, заключенной в DataToPass, выполняются ли условия для изменения цвета текста.

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