使用滑动来设置图像

安卓初学者看这里。我正在尝试使用 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

@Override

public MyHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {

    View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.box_listview, null);

    return new MyHolder(view);

}


@Override

public 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);

}


@Override

public int getItemCount() {

    return models.size();

}

}


下面有一条红线。上下文中应该包含什么内容?


慕森王
浏览 97回答 2
2回答

偶然的你

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 - 未找到错误。这可能是因为图像未加载到您的图像视图上。

紫衣仙女

当您使用 Glide.with(this) 时,您不能在不知道要发送什么的情况下简单地使用它this。context您可以使用该holder.image.getContext()方法作为上下文。另外,请检查您是否在图像上使用 https,因为后来的 Google APIS(自 PIE 起)要求您使用安全 URL,除非您另外指定。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java