我有一个 ListView,其中填充了来自 SQLite 数据库的一系列数据。现在我想根据“project_title”列对列表进行排序。据我所知,我们需要使用 ORDER BY。
所以我把它放在这样的查询中:
ListView listView = (ListView) findViewById(R.id.lstText);
listView.setOnItemClickListener(this);
listView.setAdapter(new MySimpleCursorAdapter(this, R.layout.listitems,
managedQuery(Uri.withAppendedPath(Provider.CONTENT_URI,
Database.Project.NAME), new String[] { BaseColumns._ID,
Database.Project.C_PROJECTTITLE,
Database.Project.C_SMALLIMAGE, Database.Project.C_PROJECTDESCRIPTION, Database.Project.C_BIGIMAGE}, "SELECT " + "project_title"
+" FROM "+"Project"+" ORDER BY "+"project_title"+" COLLATE NOCASE ASC", null, null),
new String[] { Database.Project.C_PROJECTTITLE,
Database.Project.C_SMALLIMAGE, Database.Project.C_PROJECTDESCRIPTION}, new int[] {
R.id.txt_title, R.id.image, R.id.txt_list_desc}));
但是随后 ListView 上什么也没有显示。我应该如何更正我的 ORDER BY 查询?
最佳答案
尝试这样的事情......
String[] all_columns = new String[] { BaseColumns._ID,
Database.Project.C_PROJECTTITLE,
Database.Project.C_SMALLIMAGE,
Database.Project.C_PROJECTDESCRIPTION,
Database.Project.C_BIGIMAGE};
Cursor c = database.query(DatabaseHelper.TABLE, all_columns , whereClause, null, null, null, "project_title asc",null);
关于android - 使用 ORDER BY 从 SQLite 中排序 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10123055/