Xamarin - Android:是否有文件选择器允许过滤掉格式

时间:2016-12-26 05:54:07

标签: android xamarin filtering file-extension

我在互联网上找到了很好的文件选择器,但没有找到一种方法来自定义文件的文件扩展名。

我正在尝试这两个包Compass File Picker和FilePicker-Plugin-for-Xamarin-and-Windows这是一个跨平台。我没有找到过滤掉文件,只显示某种类型的文件。

3 个答案:

答案 0 :(得分:0)

  

我在互联网上找到了,但没有找到一种方法可以自定义文件的文件扩展名。

我已检查 textAnimationTaskFuture.cancel(true); textView.setText("Found.); 的源代码,此插件的文件类型由FilePicker-Plugin-for-Xamarin-and-Windows硬编码。因此无法使用此插件过滤文件类型。

但您可以创建自己的文件选择器,以过滤掉您想要的文件夹和文件扩展名:

intent.SetType("*/*");

通过覆盖OnActivityResult,您将获得文件选择器的结果。

答案 1 :(得分:0)

private void Button1_Click(object sender, System.EventArgs e)
    {
        Intent = new Intent();
        Intent.SetType("image/*");
        Intent.SetType("pdf/*");
        Intent.SetAction(Intent.ActionGetContent);
        StartActivityForResult(Intent.CreateChooser(Intent, "Select a File"),PickImageId);
        //CreateChooser(Intent, "Select Picture"), PickImageId);
    }

这是用于从dvice的画廊中选择图像以及设置扩展名的方法。并且请记住,如果设备的API级别低于20,则可能还需要安装任何文件浏览器。

答案 2 :(得分:0)

FilePicker Xamarin插件有一些分支,只有一个还支持以平台无关的方式指定文件类型: https://github.com/jfversluis/FilePicker-Plugin-for-Xamarin-and-Windows (注意:我是该项目的贡献者之一。)

README.md解释说,在Android上,您可以传递要选择的MIME类型。实际的文件选择器会将与指定的MIME类型不匹配的文件显示为灰色。您可以检查示例Forms项目,了解如何在其他平台上指定文件类型。该项目最近有更新,请尝试一下。