android - 无法使用 glide 在 recyclerView 中显示图像

标签 android android-glide

图像未显示在回收站 View 中。

我正在使用 glide 在回收器 View 中显示图像

我有一个图像网址列表,并将该列表传递到适配器中。我在另一个 Activity 中使用的方法非常相似,它在那里工作......但它在这个 Activity 中不起作用。

AnimeActivity.java

public class AnimeActivity extends AppCompatActivity {

RecyclerView rv;
List<String> adsImagesData  = new ArrayList<>();


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_anime);
    rv = findViewById(R.id.ads_recyclerview);
    rv.setLayoutManager(new LinearLayoutManager(this));


    getSupportActionBar().hide();

     adsImagesData.add("http://cdn.playbuzz.com/cdn/62b7af36-65b7-41aa-8db2-e34fd8a76acf/62c5efd3-fa55-464b-8ee5-9a3e2543c830.jpg");

     rv.setAdapter(new AdRecyclerViewAdapter(this , adsImagesData));

}
}

AdRecyclerViewAdapter.java

public class AdRecyclerViewAdapter extends RecyclerView.Adapter<AdRecyclerViewAdapter.MyViewHolder> {

private Context mContext;
private List<String> mData;

public AdRecyclerViewAdapter(Context mContext, List<String> mData) {
    this.mContext = mContext;
    this.mData = mData;
}

@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {

    View view;
    LayoutInflater layoutInflater = LayoutInflater.from(mContext);
    view = layoutInflater.inflate(R.layout.ad_row_item , parent , false);

    return new MyViewHolder(view);
}

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

    Glide.with(holder.adImg.getContext()).load(mData.get(position)).into(holder.adImg);
}

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

public class MyViewHolder extends RecyclerView.ViewHolder {
    ImageView adImg;

    public MyViewHolder(@NonNull View itemView) {
        super(itemView);

        adImg = itemView.findViewById(R.id.ad_image_view);
    }
}
}

最佳答案

尝试使用

RequestManager requestManager = Glide.with(mContext); 
RequestBuilder requestBuilder = requestManager.load(mData.get(position));         
requestBuilder.into(holder.adImg); 

关于android - 无法使用 glide 在 recyclerView 中显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62906779/

相关文章:

android - 多行 EditText 中的定位提示 - TextInputLayout

android - 无法从 Activity 获取数据到 Service

android - Glide 监听器不起作用

java - Glide 用加载的图像部分覆盖屏幕

caching - 在 Glide 中查找并加载缓存的图像

android - 使用 Glide 将 1 个图像加载到多个 ImageView

android - 继续滑动已使用 Glide 将位图加载到其中的 Viewpager 时出现 OutOfMemory 错误

java - 使用 jsoup 解析 <META 内容 ="">

android - 如何从我的应用程序打开 Google Play 商店应用程序以安装 Play 商店中可用的最新版本的应用程序

android - 什么决定了 getView() 的位置参数中的取值范围?