在 CursorAdapter 中使用 "id" 列而不是“_id”

Use "id" column instead of "_id" in CursorAdapter

我正在重写 CursorAdapter class,并遇到异常 "java.lang.IllegalArgumentException: column '_id' does not exist" 因为我的 table 中的主键是 "id",而不是“_id”。

我不想更改它(数据库不是在设备上创建的,它随应用程序提供并从资产复制到 /data/data/... 目录)。

是否可以让 CursorAdapter 使用 "id" 字段?

Is it possible to make CursorAdapter use "id" field?

没有,但您可以使用 SELECT id AS _id, ... 重命名它。它在数据库中的命名并不重要——重要的是它在 Cursor.

中的命名