listview利用SimpleCursorAdapter显示sqlite数据库列表

zhangqiong123 2012-03-28 04:35:07
转载自:http://dev.10086.cn/cmdn/bbs/thread-70109-1-1.html


ListView是android中最常用的列表显示,其列表内容常常是动态的,可以通过任何方法得到,这里主要讲述从sqlite数据库中查询出来的数据直接显示到ListView中,中间桥梁就是SimpleCursorAdapter。
结果是:
数据库表

一、数据库查询:

public Cursor getScrollDataCursor(long startIndex, long maxCount) {
// 下载 的路径
// String
// path=this.openHelper.getContext().getFileStreamPath("mydb").getAbsolutePath();
// sd卡的信息
String DATABASE_PATH = android.os.Environment
.getExternalStorageDirectory().getAbsolutePath()
+ "/easymorse";
String DATABASE_FILENAME = "easymorse.db";
String path = DATABASE_PATH + "/" + DATABASE_FILENAME;
SQLiteDatabase database = SQLiteDatabase.openOrCreateDatabase(path,
null);
String sql = "select name,ename,photo,_id from user limit ?,?";
String[] selectionArgs = {String.valueOf(startIndex),String.valueOf(maxCount)};
Cursor cursor = database.rawQuery(sql, selectionArgs);
return cursor;
二、前台页面显示:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 获取分页数据
ContactsService contactsService = new ContactsService(this);
Cursor cursor = contactsService.getScrollDataCursor(0, 4);
SimpleCursorAdapter adapter=new SimpleCursorAdapter(this,R.layout.userinfo,cursor,new String[] {"name","ename"},new int[]{R.id.name,R.id.age});
// 获取listview
((ListView) findViewById(R.id.users)).setAdapter(adapter);
}
}

其中可以查询出从第几条开始,共显示几条。共显示几个字段,等信息。从这里可以看出,利用limit可以方便的实现分页。
...全文
587 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiny黎 2012-04-28
  • 打赏
  • 举报
回复
请问怎么将SimpleCursorAdapter取的两个adapter合并到一个listview中呀?
wenjunsu 2012-04-14
  • 打赏
  • 举报
回复
这个貌似不是问题。那我JF了
zyxel60b 2012-04-14
  • 打赏
  • 举报
回复
public SimpleCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to) 
Nicole_1 2012-04-14
  • 打赏
  • 举报
回复
SimpleCursorAdapter adapter=new SimpleCursorAdapter(this,R.layout.userinfo,cursor,new String[] {"name","ename"},new int[]{R.id.name,R.id.age});
这里的new int中代表的是什么啊
北方大冬瓜 2012-03-28
  • 打赏
  • 举报
回复
学习了,似乎没提问题啊?
ihrthk 2012-03-28
  • 打赏
  • 举报
回复
mark for learn.

80,479

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧