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可以方便的实现分页。
相关信息会进一步进行整理。