0

我正在开发一个带有 SQLite 数据库的 Android 项目,并且在数据库中有一个列,该列由一个布尔值(存储 1 和 0)组成,用于说明数据库中的个人是否重要。

我想要做的是输出到一个文本视图列表视图“!” 如果一个人很重要,如果他们不重要,则使用光标和光标适配器。我可以让“1”和“0”出现在列表视图中,但我的问题是如何/在哪里将它们转换为“!” 和 ” ”?

我目前使用的查询是

return database.query("people", new String[] {"_id", "important"}, null, null, null, null, "important" + " DESC, " + "name"  + " ASC");
4

2 回答 2

0

如果它是我很确定的自定义 ListView,那么您必须在 ListView 的 CustomAdapter 中执行此操作,它负责使用您传递给它的数据填充 ListView。看看这个。这样做非常简单,只需遍历 Cursor 并执行 if else 语句。

于 2013-05-11T00:33:29.717 回答
0

最简单的方法是在数据库查询中执行此操作。该query功能太不灵活,因此您必须rawQuery改用:

db.rawQuery("SELECT _id, " +
                   "CASE WHEN important THEN '!' ELSE ' ' END AS important " +
            "FROM people " +
            "ORDER BY important DESC, name ASC", null);
于 2013-05-11T07:27:37.980 回答