我正在尝试在 Android Studio 中编写一个应用程序来打开多个音乐文件并存储它们的路径。目前我所做的只是一次加载一个文件,这没有问题。例如 - 下面的代码显示了我的加载按钮和相关代码的 onclicklister。此示例的一些代码已被简化。用户单击应用程序中的加载按钮,然后使用他们安装的任何文件管理器来选择一个文件,然后将 Uri 传回我的应用程序。一切都很好。但是,是否可以选择多个文件并将它们作为文件数组传递回我的应用程序?因此,用户可能会选择 5 或 6 个音频文件,而不是选择单个音频文件。
如果是这样,你是怎么做到的?非常感谢。
无论如何-我是什么
final View.OnClickListener mGlobal_OnClickListener = new View.OnClickListener() {
public void onClick(final View v) {
int resID2 = v.getId();
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("audio/*");
try {
startActivityForResult(intent,resID2); }
catch (Exception e) {
Toast.makeText(getApplicationContext(), "Please install a file manager",Toast.LENGTH_LONG).show();
}
}
};
public void onActivityResult(int requestCode, int resultCode, Intent result) {
if (resultCode == RESULT_OK)
{
Uri data = result.getData();
String thePath = data.getPath();
// Do something with the file path
}
}
最佳答案
为了创建一个选择器来选择多个文件,您必须为您的 Intent 添加额外的值。
Intent chooseFile = new Intent(Intent.ACTION_GET_CONTENT);
chooseFile.setType("audio/*");
chooseFile.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
startActivityForResult(Intent.createChooser(chooseFile, "Choose a file") , 2);
注意:以上方法仅适用于 API 级别 18 及以上。要在您的应用中支持 API 级别 < 18,请使用一些库项目,例如 Android Multiple File Selector Dialog .
关于java - 您可以在 Android 中打开多个文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25720252/