从列表视图中获取特定ID

时间:2013-08-11 08:20:17

标签: android listview

我有ListView使用海关适配器实现。为了使适配器我使用holder class。该类具有各种TextViewsImageViews以及Int变量id,用于存储从数据库中提取的id。现在,当我点击特定列表时,我想获取id以便使用它,我可以进一步显示有关新活动的信息。该ID不应显示在ListView中。如何从onItemClickListener()获取ID 谢谢你。

3 个答案:

答案 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()方法中检索它。