如何将一些“元数据”附加到Android Listview项目?
问题描述:
class Venue {
private int id;
private String name;
}
我填充ListView的东西,如如何将一些“元数据”附加到Android Listview项目?
List<String> venueNames = data.getVenueNames();
setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, venueNames));
因此,用户选择特定的列表项之后,我想做与场地ID的SQLite的查询,但该信息将丢失时,创造场地名称。你们如何解决这个问题?
编辑:我应该提到,它不能保证场地名称是独一无二的。
答
你的问题是在这里:
List<String> venueNames = data.getVenueNames();
不要那样做。你是一个“失去”信息的人。如果你不想失去它,不要失去它。
最简单的是创建一个ArrayAdapter<Venue>
,并有Venue
的toString()
返回name
。然后,在您的ArrayAdapter<Venue>
上拨打getItem()
将返回Venue
。