我有一个列表,我用数据库中的数据填充,现在我想按标题和日期对这些数据进行排序.
我仍然是Android编程的新手,因此无法在此处找到操作方法,希望有人能提供帮助.
这是列表的填充方式:
public void fillData()
{
// get all the data from database
DBAdapter db = new DBAdapter(this);
db.open();
mCategoriesCursor = db.getAllTitles();
startManagingCursor(mCategoriesCursor);
String[] from = new String[] { DBAdapter.KEY_TITLE, DBAdapter.KEY_DATE };
int[] to = new int[] { R.id.text1, R.id.text2 };
// Now create an array adapter and set it to display using our row
SimpleCursorAdapter categories =
new SimpleCursorAdapter(this, R.layout.categories_row, mCategoriesCursor, from, to);
setListAdapter(categories);
db.close();
}
这是SQL:
//---retrieves all the categories---
public Cursor getAllTitles()
{
return db.query(DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_TITLE,
KEY_DATE,
KEY_EXTRA},
null,
null,
null,
null,
null);
}
解决方法:
最好的方法是对从数据库中获取的数据进行排序.这是在创建游标时完成的(这不是发布的代码的一部分).查询数据库时,可以指定排序顺序.