如何在ListView的每一行上设置行ID?

时间:2010-10-25 11:12:12

标签: android listview rowid

我正在开发一个Android应用程序。

如何为ListView上的每个项目设置行ID?我不想使用SimpleCursorAdapter。我拥有自己的对象,我想使用它们。

这些对象有ID和NAME。将显示该名称,并将存储该ID以在onListItemClick(ListView parent, View v, int position, long id)上检索它。

有什么建议吗?

感谢。

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案是创建一个将名称映射到ids的哈希:

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();