如何使用Intent将ArrayList <file>对象从一个Activity传递到另一个Activity?

时间:2016-03-04 06:20:26

标签: android android-intent arraylist

我有一个ArrayList文档,我想将此文件发送到另一个Activity。但如何在SecondActivity中获取此值

我尝试的是 在第一个活动

 private ArrayList<File> documents;
Intent selectLabInt = new Intent(FirstActivity.this, SecondActivity.class);

 selectLabInt.putExtra("patient_name", patientNameStr);
 selectLabInt.putExtra("referal_notes", referalNotesStr);
 selectLabInt.putExtra("fileList",documents);

 startActivity(selectLabInt);

2 个答案:

答案 0 :(得分:2)

如果您的File可序列化,那么您可以像这样传递ArrayList

在发送活动中:

ArrayList<File> documents= new ArrayList<File>();
intent.putExtra("documents", documents);

在接收活动中:

ArrayList<File> documents = (ArrayList<File>)getIntent().getSerializableExtra("documents");

答案 1 :(得分:0)

您需要设置文件类 parcelable ,以便您可以通过 putParcelable 传递该类的arraylist。

这是相同https://stackoverflow.com/a/6681784/942224

的示例