android如何将从数据库读取的数据显示在listview中
本地数据就用ormlite-android-4.19.jar和ormlite-core-4.19.jar 可以帮助你管理本地数据,网络上的数据应该要后台做接口让你去调用,adapter可以写一个方法addpendList或者setList,这两个方法都是控制当前adapter持有的list的,adapter可以持有这个list并且给每个item设置布局。
本地得到的数据就是List,如果是服务器的数据就是JSON格式,可以用JSONUtil.java之类的去解析然后获取list,不是list的数据就直接res.getString("name");
ListView.SetAdapter();就可以设置adapter了,然后adapter如果有数据就会填充List
刷新的话是adapter.notifyDataSetChanged();
本地数据就用ormlite-android-4.19.jar和ormlite-core-4.19.jar 可以帮助你管理本地数据,网络上的数据应该要后台做接口让你去调用,adapter可以写一个方法addpendList或者setList,这两个方法都是控制当前adapter持有的list的,adapter可以持有这个list并且给每个item设置布局。
本地得到的数据就是List,如果是服务器的数据就是JSON格式,可以用JSONUtil.java之类的去解析然后获取list,不是list的数据就直接res.getString("name");
ListView.SetAdapter();就可以设置adapter了,然后adapter如果有数据就会填充List
刷新的话是adapter.notifyDataSetChanged();
R.layout.mainlayout, new String[] { "text", "time", "image" },
new int[] { R.id.PL_TextView01, R.id.PL_TextView02,
R.id.PL_ImageView01 });
lv.setAdapter(adapter);
private List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
Cursor cur = DR.query("DB", new String[] { "text", "time" }, null,
null, null, null, "time desc");
while (cur.moveToNext()) {
for (int i = 0; i < cur.getCount(); i++) {
cur.moveToPosition(i);
String text = cur.getString(0);
String time = cur.getString(1);
map = new HashMap<String, Object>();
map.put("text", text);
map.put("time", time);
map.put("image", R.drawable.ic_menu_close_clear_cancel);
list.add(map);
}
}
return list;
}
我是使用SimpleAdapter 作为listview的适配器 通过数据的query方法 将数据放入listview