将列表 添加到Android中的捆绑包

问题描述 投票:0回答:3

我在List中有File'sAndroid

List<File> images

而且我需要将其打包。我一直在尝试将它们转换为Parcelable,但是我还没有找到一种方法。

bundle.putParcelable(BundleKeys.IMAGES.name(), images);

[File来自摄像机的图像。

android file bundle parcelable
3个回答
2
投票

将此用于传递:

ArrayList<File> images; //Your list
bundle.putSerializable(BundleKeys.IMAGES.name(), images);

并使用它来检索它:

ArrayList<File> images = (ArrayList<File>) getIntent().getSerializableExtra(BundleKeys.IMAGES.name());

1
投票

java.io.File是可序列化的,因此您可以将其设置为可序列化。但是,仅适用于一个文件。但是,它不是很有效,并且可能导致ClassCastException,但是您也可以将List强制转换为Serializable。

bundle.putSerializable("IMAGES", (Serializable) images);

0
投票

请考虑您是否真的需要传递整个File对象。也许您可以映射一些数据并将它们仅通过Bundle传递。

© www.soinside.com 2019 - 2024. All rights reserved.