java - 如何正确地将文件数组传输到另一个活动?
问题描述
我正在尝试将一个数组从一个活动转移到另一个活动,以便在该新活动中使用它,字符串真的很容易,但文件数组会出错。
我试图将其作为字符串数组或仅作为字符串传输,但没有执行任何操作。
第一个活动(带有一个有效的字符串示例):
public static final ArrayList<File> EXTRA_keyfiles = new ArrayList<File>();
public static final String EXTRA_keynames = "";
File key = new File(DirPath, fileName);
// add files to the array and strings to fileNames
Intent intent = new Intent(this, StealthService.class);
intent.putExtra(EXTRA_keynames, fileNames);
intent.putExtra(EXTRA_keyfiles, keyFiles);
startActivity(intent);
第二个活动(试图作为字符串数组传输):
ArrayList<String> names = intent.getStringArrayListExtra(EXTRA_keynames);
ArrayList<String> files = intent.getStringArrayListExtra(EXTRA_keyfiles);
如何正确传输阵列
解决方案
在第一个活动中使用putStringArrayListExtra
而不是。putExtra
推荐阅读
- python - 不使用类的纸牌游戏的python数据结构
- javascript - 将字符串检查的字数添加到现有的 IF 语句中
- android - Android RecyclerView getChildunder() ,偏移问题
- python - 在字符串中查找特殊的数字序列(坐标)
- pandas - Pandas:如何过滤数据框中不等于其他数据框中列组合的行?
- android - 使用android发送电子邮件而不发送电子邮件
- google-sheets - 谷歌表格过滤器+匹配?没有把握
- reactjs - 反应道具中的条件渲染
- acumatica - Acumatica - 删除通用样式的通风口处理程序
- mathematical-optimization - 最优解中的一些值仍然违反 Matlab FMINCON 中的约束限制