如何将数据从listview传递到下一个(详细信息)屏幕

时间:2013-09-02 17:16:58

标签: android-listview

我创建了一个sstatic Arraylist并使用自定义适配器在listview中显示数据。我的要求是当我点击listitem时,我必须在下一个屏幕中显示特定listitem的详细信息。如何将所选列表项数据从列表视图屏幕传递到详细信息屏幕。

我尝试使用parcelable概念传递数据。但是当我点击listitem时,我得到“空指针异常”

任何完整的例子都会非常有用。

提前致谢。

1 个答案:

答案 0 :(得分:2)

可以通过以下方式实现。我假设您的列表项是文本视图。

将onItemClick侦听器添加到列表视图中,单击“获取所选项目”文本并将其与迭代附加内容一起传递给NextActivity。

  listview.setOnItemClickListener(new OnItemClickListener() {

            public void onItemClick(AdapterView<?> arg0, View p_view,
                    int p_pos, long arg3) {


                  TextView text= (TextView ) p_view.findViewById(R.id.textview1); //id of textview from layout file that you are inflating.

                  String mytext=text.getText();
                  Intent i = new Intent(Context context,NextActivity.class);
                  i.putExtra("text",mytext);
                  startActivity(i);

                            }
                  });

在下一个活动中,从附加内容中检索文本。

            Bundle extras = getIntent().getExtras();
            String text_value= extras.getString("text");