我正在从数据库查询中构建一个列表视图(每个项目有 2 行)。我为每个项目附加了一些数据,但稍后在他们的 onClick 侦听器中再次检索它时遇到了麻烦。
data是键/值对的列表,比如Title、Date 和 ID
List<Map<String, String>> data = new ArrayList<Map<String, String>>();
我的适配器创建如下所示的列表视图:
SimpleAdapter adapter = new SimpleAdapter(this, data,
android.R.layout.simple_list_item_2,
new String[] {"title", "date"},
new int[] {android.R.id.text1, android.R.id.text2});
itemlist.setAdapter(adapter);
setListAdapter(adapter);
我像这样附加 onListItemClick 侦听器:
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Intent intent = new Intent(this, CtestActivity.class);
Object obj = this.getListAdapter().getItem(position);
// here I want to extract the id from obj
// obj.toString() is {id:7, title: sometitle, date: yesterday}
}
这可能很简单是缺乏java知识。无论哪种方式,我都会很感激有关如何从这个“类似地图”的对象 obj 访问特定值的一些信息。