无法为jpg,png和jpeg类型的图像文件设置文件意图

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

我正在使用以下代码:

Intent fileIntent = new Intent(Intent.ACTION_GET_CONTENT);
fileIntent.setType("image/jpg|image/png|image/jpeg"); 
startActivityForResult(fileIntent, REQUEST_FILE);

我相信该代码应允许我选择任何jpg,png或jpeg文件,但是没有。

另一方面,更改fileIntent.setType(“ image / jpg | image / png | image / jpeg”);到fileIntent.setType(“ image / *”);允许选择文件。但是它也允许选择我不想使用的另一个图像文件。

需要在fileIntent.setType(“ image / jpg | image / png | image / jpeg”)中更正的内容;因此它允许选择那些类型的文件,而不是其他类型的文件?

android image filechooser
1个回答
2
投票

您只能使用setType()指定一个模仿类型,而要使用带有模仿类型数组的键Intent.EXTRA_MIME_TYPES来应用其他模仿类型:

fileIntent.putExtra(Intent.EXTRA_MIME_TYPES, Arrays.asList("image/png", "image/jpeg").toArray());

[我发现,即使提供了模仿类型列表,您仍然可能需要将intent.fileType("*/*");应用于意图,但是,模仿类型列表将具有优先权。

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