首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有远程ImageView的Android ImageView

带有远程ImageView的Android ImageView
EN

Stack Overflow用户
提问于 2014-07-24 14:10:01
回答 2查看 1.2K关注 0票数 0

我已经实现了ViewHolder模式im my adapter,其中有一个用远程映像填充的ImageView,问题是当我滚动时总是在获得正确的图像之前(在一个新的ms之后)得到一个错误的图像,我想这是由于当前视图是一个先前膨胀的视图,但是我没有看到任何可能的解决方案。

代码语言:javascript
复制
if (rowView == null) {
       rowView  =   mInflater.inflate(R.layout.layout, parent, false);
       ViewHolder viewHolder                =   new ViewHolder();
       viewHolder.imageView     =   (ImageView)  rowView.findViewById(R.id.image);

       rowView.setTag(viewHolder);
}

ViewHolder viewHolder = (ViewHolder) rowView.getTag();

viewHolder.imageView.setImageResource(0);
imageLoader.DisplayImage(URL, viewHolder.imageView);

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-24 14:58:49

您的代码似乎在正确的轨道上。唯一的问题是,imageView.setImageResource(0)似乎没有清除图像,至少在我的Nexus 5运行kitkat。

相反,也许试一试

imageView.setImageDrawable(new ColorDrawable(android.R.color.transparent));

或者甚至可能将ImageView's可见性设置为INVISIBLE

票数 3
EN

Stack Overflow用户

发布于 2014-07-24 14:50:13

getView中创建行时,使用URL字符串调用ImageView上的setTag,并删除当前存在的任何图像。当图像完成加载后,在ImageView上设置它之前,调用getTag并检查该URL是否仍然匹配。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24936058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档