【发布时间】:2015-04-01 06:35:57
【问题描述】:
我在使用 Picasso 从服务器加载 ListView 中的图像时遇到问题。
我有一个用于填充我的 ListView 的 BaseAdapter。在这个 ListView 中,有些项目有图片,有些没有。
在这个方法中:
public View getView(final int position, View convertView, ViewGroup parent) {
我愿意:
...
//context = Activity context;
//context1 = Context context1;
context1 = context.getApplicationContext();
if (!photo[position].equals("")) {
String stringurl = "http://www.blablabla.it/img/"+photo[position]+".jpg";
Picasso.with(context1)
.load(stringurl)
.placeholder(R.drawable.white)
.into(holder.imageD);
}
else {
holder.imageD.setImageBitmap(null);
}
此代码有效,但我经常看到图像位于与其所属位置不同的位置!
您可以想象这对用户来说非常烦人.. 谢谢大家
【问题讨论】:
-
您还应该在 else 语句中使用 Picasso 调用...然后应该取消对
holder.imageD的任何加载请求... -
@Selvin 所以我应该写: holder.imageD.setImageBitmap(null);如果(...){毕加索...}?可以举个例子吗?
-
else {Picasso.with(context1) .load(null) .placeholder(R.drawable.white) .into(holder.imageD);} -
@Selvin 写:else{ holder.imageD.setImageBitmap(null); } 不是一回事吗?
-
不!你看我的评论了吗?
标签: java android listview baseadapter picasso