现在的问题是,每当新项目被添加到ListVIEw时,整个ListVIEw都会刷新,这会导致ListVIEw中已加载的图像闪烁.是的,我正在缓存光盘和内存中的所有图像,代码可以非常顺利地进行缓存.
我也尝试使用这个adapter.addall(myarrayList)将数据添加到适配器中,但它没有帮助. ImageVIEws仍在闪烁.我在StackOverflow上搜索了很多关于它的内容,发现你无法在不刷新整个ListVIEw的情况下在ListVIEw中添加和显示更多项目.我已经知道了,但必须有一些方法可以向ListVIEw添加新数据,而不是刷新已经加载的数据.
我正在设置这样的适配器.
public VIEw getVIEw(int position,VIEw vIEw,VIEwGroup parent) { int main = R.layout.layout; VIEwHolder holder = null; LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); if (vIEw == null) { holder = new VIEwHolder(); vIEw = inflater.inflate(main,null); holder.image = (ImageVIEw) convertVIEw.findVIEwByID(R.ID.imagevIEw); ///More stuff vIEw.setTag(holder); } else { holder = (VIEwHolder)vIEw.getTag(); } // Loading ImageVIEws by Urls return vIEw; }
有人可以对此有所了解吗?
解决方法 您似乎正在以正确的方式执行此 *** 作,因此问题可能来自您的imageLoader.如果网址相同,则不应在imagevIEw上再次设置图像.例如您可以在imageVIEw上使用setTag(url)方法,并测试网址是否已更改.
希望这会帮助你.
总结以上是内存溢出为你收集整理的android – ListView在添加新项目时闪烁全部内容,希望文章能够帮你解决android – ListView在添加新项目时闪烁所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)