安卓初学者看这里。我正在尝试使用 glide (并且我已经添加了库)将图像添加到我的图像视图中。看看其他例子,大多数人似乎都会这样做: Glide.with(this).load("link").into(myHolder.image);但是当我使用适配器类时这不起作用。public class MyAdapter extends RecyclerView.Adapter<MyHolder> {Context c;ArrayList<Model> models;public MyAdapter(Context c, ArrayList<Model> models) { this.c = c; this.models = models;}@NonNull@Overridepublic MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.box_listview, null); return new MyHolder(view);}@Overridepublic void onBindViewHolder(@NonNull MyHolder myHolder, int i) { myHolder.name.setText(models.get(i).getName()); myHolder.type.setText(models.get(i).getType()); Glide.with(this).load("http://img.pokemondb.net/artwork/pokemonname.jpg").into(myHolder.image);}@Overridepublic int getItemCount() { return models.size();}}下面有一条红线。上下文中应该包含什么内容?
2 回答
偶然的你
TA贡献1841条经验 获得超3个赞
Glide.with(this).load("http://img.pokemondb.net/artwork/pokemonname.jpg").into(myHolder.image);
将上面的代码更改为以下代码:
Glide.with(c).load("http://img.pokemondb.net/artwork/pokemonname.jpg").into(myHolder.image);
另外,请检查您的 URL,它显示 404 - 未找到错误。这可能是因为图像未加载到您的图像视图上。
紫衣仙女
TA贡献1839条经验 获得超15个赞
当您使用 Glide.with(this) 时,您不能在不知道要发送什么的情况下简单地使用它this
。context
您可以使用该holder.image.getContext()
方法作为上下文。
另外,请检查您是否在图像上使用 https,因为后来的 Google APIS(自 PIE 起)要求您使用安全 URL,除非您另外指定。
添加回答
举报
0/150
提交
取消