图像未显示在回收站 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/