我有ListView
使用海关适配器实现。为了使适配器我使用holder class
。该类具有各种TextViews
和ImageViews
以及Int变量id,用于存储从数据库中提取的id。现在,当我点击特定列表时,我想获取id以便使用它,我可以进一步显示有关新活动的信息。该ID不应显示在ListView
中。如何从onItemClickListener()
获取ID
谢谢你。
答案 0 :(得分:1)
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
YourObject selected = adapter.getItem(position);
然后,您可以将选定的列表项(对象)发送到新活动
Intent mIntent = new Intent(ThisActivity.this, NewActivity.class);
mIntent.putExtra("list_selected", selected);
startActivity(mIntent);
答案 1 :(得分:1)
您可以将代码设置为View
(.setTag()
)然后检索它,它会发生在自定义getView()
Adapter
方法上
以下是示例代码:
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String transactionId = ((TextView) view
.findViewById(R.id.tvTID)).getText().toString();
handler.getTransactionDetails(callback, transactionId);
}
});
答案 2 :(得分:0)
以及一个Int变量id来存储从中获取的id 数据库中。
您没有提供有关 id 的更多信息(我不确切知道它的内容)但是为了简单起见,您可以为ListAdapter
中的每个小部件设置此ID通过setTag()方法,然后只需从onItemClick()
方法中检索它。