Обращение к элементу RecyclerView.ViewHolder из AsyncTask

170
14 апреля 2017, 20:47

Я создал определенный view элемент, код ниже:

public class PersonViewHolder extends RecyclerView.ViewHolder {
    ImageView personPhoto;
    ImageButton personLike;
    PersonViewHolder(View itemView) {
        super(itemView);
        personPhoto = (ImageView)itemView.findViewById(R.id.person_photo);
        personLike = (ImageButton)itemView.findViewById(R.id.btn_like);
    }
}

В методе onBindViewHolder идет установка значений в элемент personViewHolder.personPhoto:

@Override
public void onBindViewHolder(PersonViewHolder personViewHolder, int i) { Glide.with(personViewHolder.personAge.getContext()).load(dogs.get(i).photoId).into(personViewHolder.personPhoto);}

Далее в AsyncTask выполняется нужная мне задача и в методе onPostExecute я хочу произвести установку изображения в элемент personViewHolder.personLike:

public final class like_set extends AsyncTask<Integer , Void, String> {
    @Override
    protected String doInBackground(Integer ... arg) {
        String res = "1";
        return res;
    }
    @Override
    protected void onPostExecute(String result) {
        super.onPostExecute(result);
        if ( result.equals("1"))
        {Glide.with(personViewHolder.personLike.getContext()).load(R.drawable.like_red).into(personViewHolder.personLike);
        }
        else
        {
        }
    }
}

Но возникает ошибка "Cannot resolve symbol personViewHolder" при обращении к строчке personViewHolder в onPostExecute.

Как можно из этого метода установить картинку в мой view элемент PersonViewHolder?

Answer 1

Cannot resolve symbol personViewHolder

Еще бы не писал, он находится очевидно в другом классе. Либо делайте свой AsyncTask вложенным классом или передавайте personViewHolder в конструкторе AsyncTask

READ ALSO
HQL запрос с map в Java

HQL запрос с map в Java

Как создать запрос HQL в Java вида:

205
Возможно ли установить timeout для Socket

Возможно ли установить timeout для Socket

Всем привет! У меня десктопное приложение на javafx клиент-серверСхема такова: преподаватель - клиент, студенты - сервер

169
Отображение потокового видео в android приложение

Отображение потокового видео в android приложение

Есть четыре камеры, работаю по HTTP протоколу, как реализовать вывод изображения с камер?

199
Чем прочитать DBF в Java

Чем прочитать DBF в Java

Требуется прочитать информацию из небольшой dbf-таблицыЕсть какая-то простенькая библиотека для чтения из этого формата? делать полноценный...

276