ListView解决刷新时Item中的图片出现闪动

问题描述:

Listview的item中有图片,在刷新时及时新数据和旧数据并无两样,imageview还是会闪动。

先来分析图片闪动可能的原因:

1)adapter = new WillListAdapter(MyApplication.getInstance(), wills);

不管此前adapter是否已绑定数据,或数据前后有没有变化,这条语句执行的时候,adapter都会使listview重绘所有item,这个闪动不可避免

2)adapter.notifyDataSetChanged();

如果该 item对应的数据发生变化,会重绘该item,出现闪动

3)imageview的异步加载可能有问题,改用volley不会出现

解决:

这里只解决刷新后数据没变但发生闪动的情况

刷新的 错误代码

adapter = new WillListAdapter(MyApplication.getInstance(), wills);

改为

if (!wills.isEmpty()) {
wills.removeAll(wills);
}
wills.addAll(JsonTools.getObjects(httpResult.getResult().toString(), Will.class));
adapter.notifyDataSetChanged();

 

Done

 

posted @ 2014-12-28 13:30  行云有影  阅读(3615)  评论(0编辑  收藏  举报