java - 如何在 Android 上将 List<String> 设置为 ImageView 的 RecyclerView 适配器

标签 java android android-recyclerview

在我的应用程序中,我想将图像显示到 RecyclerView Adapter 中。
我写了下面的代码,但没有在 ImageView 中显示任何图像。

我的适配器代码:

public class DetailMiniGalleryAdapter extends RecyclerView.Adapter<DetailMiniGalleryAdapter.ViewHolder> {
    private List<String> model;
    private Context context;

    public DetailMiniGalleryAdapter(Context context, List<String> model) {
        this.context = context;
        this.model = model;
    }

    @Override
    public DetailMiniGalleryAdapter.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
        View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.list_row_detail_mini_gallery, viewGroup, false);
        return new ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(DetailMiniGalleryAdapter.ViewHolder viewHolder, int i) {

        Glide.with(context)
                .load(Constants.SERVER + model)
                .diskCacheStrategy(DiskCacheStrategy.SOURCE)
                .into(viewHolder.listRow_detailMiniGalleryImg);
        Log.e("galleryImages", model+"");
    }

    @Override
    public int getItemCount() {
        return model.size();
    }

    public class ViewHolder extends RecyclerView.ViewHolder {

        private ImageView listRow_detailMiniGalleryImg;

        public ViewHolder(View view) {
            super(view);

            listRow_detailMiniGalleryImg = view.findViewById(R.id.listRow_detailMiniGalleryImg);
        }
    }
}

LogCat 中的我的图像网址:

/galleryImages: [/img/ps/1.png, /img/ps/2.png, /img/ps/3.png, /img/ps/4.png, /img/ps/5.png]

我在 mainActivity 中使用此代码填充适配器:

miniGalleryAdapter = new DetailMiniGalleryAdapter(getActivity(), detail.getImage());

但是当使用此代码时: .load(Constants.SERVER + model.get(0)) 显示图像,但只显示 1image!我想显示所有图像

我怎样才能做到?

最佳答案

不要直接在 load 中使用 model,而是使用 model.get(i)

 Glide.with(context)
            .load(Constants.SERVER + model.get(i)) //< i is position of item
            .diskCacheStrategy(DiskCacheStrategy.SOURCE)
            .into(viewHolder.listRow_detailMiniGalleryImg);

关于java - 如何在 Android 上将 List<String> 设置为 ImageView 的 RecyclerView 适配器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49106437/

相关文章:

android - 添加第一个项目时 Recyclerview 项目动画崩溃

java - Hibernate 中使用 ByteBuddy 代理的 MethodHandler 陷入无限循环

java - Appium - 通过java代码在Android设备上滑动无法工作

android - RecyclerView onClick问题

带有 cURL 的 Android NDK 包含错误

android - 如何改变seekBar进度的比例

java - 如何解决此 recylerview 问题?我的代码有什么错误吗?在应用程序中唱歌后在运行时崩溃

java.lang.IllegalArgumentException - 'other' 具有不同的根

Java数组改组

java - button.OnClick 代码运行但不执行更改?