我正在开发一个 Android 应用程序。
如何为 ListView 上的每个项目设置行 ID?我不想使用 SimpleCursorAdapter。我有自己的物品,我想使用它们。
这些对象具有 ID 和 NAME。将显示名称并存储 ID 以在 上检索它onListItemClick(ListView parent, View v, int position, long id)
。
有什么建议吗?
谢谢。
一个简单的解决方案是创建一个将名称映射到 id 的哈希:
Map<String, Integer> map = new HashMap<String, Integer>();
for(MyObject obj: objectsList) {
map.put(obj.getName(), Integer.valueOf(obj.getId()));
}
String name = getListView().getItemAtPosition((int) id).toString();
int id = map.get(name).intValue();