如何将一个Activity中的ListView数据传递给另一个Activity上的TextView?

时间:2018-06-05 20:56:58

标签: android listview textview parcelable serializable

我设法将文本添加到ListView,但我想将ListView数据传递给另一个活动中的TextView,方法是单击按钮'按钮'。我不知道如何使用Serializable或Parcelable通过Listview传递数据。 Layout Screenshot

public void onClick(查看v){

        switch (v.getId ()) {
            case R.id.btnAdddata:

                String result = editText.getText ().toString ();
               arrayList.add(result); //add text from edittext to list
              adapter.notifyDataSetChanged (); //update arraylist and notify adapter
             break;

            case R.id.btnNext:

                 Intent i = new Intent (MainActivity.this, NextActivity.class);
                 i.putExtra("key", (Serializable) listView_lv);
                startActivity (i);
                break;

        }
    }

1 个答案:

答案 0 :(得分:0)

这仍然需要您实现parcelable(如果使用自定义对象)。如果您进行快速谷歌搜索,有关于如何执行此操作的指南!

这是一个使用字符串ArrayList的示例!

ArrayList<String> myData = new ArrayList<>();
        for(int i = 0; i < listView.getAdapter().getCount(); i++) {
            myData.add(listView.getAdapter().getItem(i));
        }
        Intent intent = new Intent(CurrentActivity.this, NewActivity.class);
        intent.putStringArrayListExtra("myData", myData);
        // Or use this for a list of custom objects, but the custom objects need to implement Parcelable - Google this to find out more!
        intent.putParcelableArrayListExtra("myData", myData);
        startActivity(intent);