如何在意图中将特定项目放入ListView中?

时间:2014-08-18 17:51:06

标签: android listview android-intent android-arrayadapter onclicklistener

ArrayAdapter<Comment> adapter = new ArrayAdapter<Comment>(this,
            android.R.layout.simple_list_item_1, values);
    // setListAdapter(adapter);

    final ListView listView = (ListView) findViewById(R.id.list);
    listView.setAdapter(adapter);

    listView.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {

    });

如何获取listview中单击的项目并将其存储在intent中(我知道如何将其存储在intent中,我只需要获取被单击的项目)?

3 个答案:

答案 0 :(得分:0)

您应该在OnItemClickListener中使用getItem()方法:

adapter.getItem(position);

答案 1 :(得分:0)

实现OnItemClickListener接口后:

public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
    Intent intent = new Intent(getActivity(), NextActivity.class);

    //since you have your values inside an array; you can use position to get
    //the selected value

    intent.putExtra("KEY", values.get(position));

    startActivity(intent);
}

我希望这有帮助!

答案 2 :(得分:0)

我假设您已经为ListView编写了适配器的一部分。在此适配器中,有一些方法可以让您操作列表,从而操作列表中的每个项目。您可以在适配器中使用此方法

public String getItem(int index) {

    return getItem(index);
}

请注意,它可以返回您正在查找的项目(整数,长整数,对象...)。 您必须将适配器扩展到BaseAdapter或其他类才能显示这些方法