安卓当数据库内容更新是如何刷新ListView?
5个回答
展开全部
0、本质上是listview绑定Adapter,Adapter关联List,因此List变化后导致Adapter同步变化;再通过调用adapter.notifyDataSetChanged();方法使得listview界面自动更新。
操作:
1、List<String> strName = new ArrayList<String>();//实际的数据源
2、Adapter adapter = new ArrayAdapter<String>(context,
R.layout.xmlforitem, strName);//适配器,其中 R.layout.xmlforitem是列表中每一项的布局,可以用默认的也可自建,strName则是将数据源绑定到适配器
3、listView.setAdapter(adapter);//将适配器绑定到列表显示控件ListView;
4、strName.add("TEST ONE");//增加一项,引起list变化,Adapter也随之变化;
5、adapter.notifyDataSetChanged();//调用notifyDataSetChanged();更新适配器,ListView会自动刷新,notifyDataSetChanged()方法可能需要在UI线程中调用,建议自行测试;
6、数据增加可能引起内存变化,需防内存溢出;
7、其他。
以上仅供参考,建议多搜索相关文档。
操作:
1、List<String> strName = new ArrayList<String>();//实际的数据源
2、Adapter adapter = new ArrayAdapter<String>(context,
R.layout.xmlforitem, strName);//适配器,其中 R.layout.xmlforitem是列表中每一项的布局,可以用默认的也可自建,strName则是将数据源绑定到适配器
3、listView.setAdapter(adapter);//将适配器绑定到列表显示控件ListView;
4、strName.add("TEST ONE");//增加一项,引起list变化,Adapter也随之变化;
5、adapter.notifyDataSetChanged();//调用notifyDataSetChanged();更新适配器,ListView会自动刷新,notifyDataSetChanged()方法可能需要在UI线程中调用,建议自行测试;
6、数据增加可能引起内存变化,需防内存溢出;
7、其他。
以上仅供参考,建议多搜索相关文档。
展开全部
重写onStart(),在里面加上getData()即可,也就是每次进入这个页面就刷新数据
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
重写onStart(),在里面加上getData()即可,也就是每次进入这个页面就刷新数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.从数据库中找出数据
2.把你 List<String> 拿出来做引用 不要每次查数据 重新new 一个对象
3.重复查找数据时 ,更新List<String> 内容即可。
4.adapter.notifydataSetChanged();
2.把你 List<String> 拿出来做引用 不要每次查数据 重新new 一个对象
3.重复查找数据时 ,更新List<String> 内容即可。
4.adapter.notifydataSetChanged();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
更新数据后,aa.notifydataSetChanged();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询