如何将一些“元数据”附加到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>,并有VenuetoString()返回name。然后,在您的ArrayAdapter<Venue>上拨打getItem()将返回Venue