历览千载书,时时见遗烈。这篇文章主要讲述android ListView中使用notifyDataSetChanged()不刷新相关的知识,希望能为你提供帮助。
private List<
Navi>
mRouteList;
1. 设置Adapter
private void initData() { mRouteList = new ArrayList< Route> (); mRouteList.clear(); mAdapter = new CarRouteAdapter(getActivity(), mRouteList); mListView.setAdapter(mAdapter); }
2. 获取数据,刷新listview
private void updateRoutes(List< MtqCarRoute> listOfResult) {
mRouteList.clear(); mRouteList = CarUtils.formatNaviRoutes(listOfResult); mAdapter.notifyDataSetChanged();
}
发现这样做,listview的数据已经发生变化,但是就是没有更新。
解决如下:
private void updateRoutes(List< MtqCarRoute> listOfResult) { mRouteList.clear(); // mRouteList = CarUtils.formatNaviRoutes(listOfResult); mRouteList.addAll(CarUtils.formatNaviRoutes(listOfResult)); mAdapter.notifyDataSetChanged(); }
【android ListView中使用notifyDataSetChanged()不刷新】
推荐阅读
- Android 调用优酷SDK上传视频
- Android BlueDroid(BlueDroid蓝牙开启过程enable)
- Android之旅---广播(BroadCast)
- Android攻城狮使用LogCat方式调试程序
- android读取xml文件来实现省份,城市,区的选择
- log4j emailEmailDailyRollingFileAppender
- leetCode(29):Happy Number
- Android攻城狮重新认识Toast
- [Android 4.4.4] 泛泰A850 三版通刷 Mokee4.4.4 KTU84P 20140626 RC2.2 by syhost