因为每次item的数据比较多,调用listView.setadapter()以后它都从第一个数据开始显示.
网上有一种解决方案就是先获取动作前的item位置listView.getFirstVisiblePosition();
刷新以后在用listView.setSelection设置回来,但这种效果不是很理想,当item项只在可见
区域显示半行的时候,还是会有位移。请问各位大侠有木有更好的办法?
网上有一种解决方案就是先获取动作前的item位置listView.getFirstVisiblePosition();
刷新以后在用listView.setSelection设置回来,但这种效果不是很理想,当item项只在可见
区域显示半行的时候,还是会有位移。请问各位大侠有木有更好的办法?
notifydatasetChange 会自动刷新listview , 不会出现你说的情况,每次数据改变就去setAdapter 是很不好的做法。
Adapter adapter=new Adapter(this,list)
listview.setadapter(adapter)
你需要做的就是更新list
然后adapter.notifydatasetChange
仅此而已