我有一个ListView,其内容可以随时更改(例如,州内城市列表;新城市可以随时添加到我们数据库中的州)。如果可能的话,如何实现onListItemClick事件以使用它?例如,如果用户在ListView中选择某个城市,我应该能够传递一个值,该值可以独立识别单击哪个城市进入下一个活动。我不能听取立场,因为他们可能会随着城市的增加或移除而改变。有什么建议吗?
答案 0 :(得分:1)
在这种情况下,您必须编写自己的适配器(例如,扩展BaseAdapter
)并覆盖getItemId
方法:
@Override
public long getItemId(int posicion) {
return somethingThatIdentifyTheCityThatWasClicked;
}
由于onListItemClick
方法获得了该ID,其余部分将是小菜一碟:
@Override
protected void onListItemClick(ListView l, View v, int position, long thisID)
{
// use the 'thisID' variable
}