Как обновить данные RecyclerView внутри функции onBindViewHolder его адаптера в Android - PullRequest
0 голосов
/ 19 июня 2020

В моем приложении я хочу загрузить изображения и показать их пользователю внутри RecyclerView во время выполнения (начать загрузку только тогда, когда пользователь прокручивает элемент списка). Но внутри обратного вызова после завершения загрузки при выполнении data.get(pos).localLink=localLink; я получаю ArrayIndexOutOfBoundsException , пожалуйста, посмотрите мой код ниже.

public ArrayList<GroupFeedData> data;

@Override
    public void onBindViewHolder(@NonNull CustomImageViewHolder holder, int position) {

         final int pos=position;
         holder.customImageView.downloadImage(data.get(pos).downloadLink,new JobCompletionListener() {
                    @Override
                    public void onJobCompletion(String localLink) {
                        data.get(pos).localLink=localLink; // Index out of bound exception
                        notifyItemChanged(pos);
                    }
                });
}

public static class CustomImageViewHolder extends RecyclerView.ViewHolder {

//ViewHolder implementation
}

Как мне решить эту проблему? Заранее спасибо.

...