如何将图像上传设置为仅jpg和png文件?

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

这里是我正在使用的代码,效果很好,但是我如何仅将文件类型设置为jpg和png并禁止/不显示画廊中的其他图像

private void ButtonOnClick(object sender, EventArgs eventArgs) {
    Intent = new Intent();
    Intent.SetType("image/*");
    Intent.SetAction(Intent.ActionGetContent);
    StartActivityForResult(Intent.CreateChooser(Intent, "Select Picture"), PickImageId);
}

#endregion

#region Get the Path of Selected Image
private string GetPathToImage(Uri uri) {
    string path = null;
    // The projection contains the columns we want to return in our query.
    string[] projection = new[] { 
            Android.Provider.MediaStore.Images.Media.InterfaceConsts.Data };
    using (ICursor cursor = ManagedQuery(uri, projection, null, null, null)) {
        if (cursor != null) {
            int columnIndex = cursor.GetColumnIndexOrThrow(Android.Provider.MediaStore.Images.Media.InterfaceConsts.Data);
            cursor.MoveToFirst();
            path = cursor.GetString(columnIndex);
        }
    }
    return path;
}
#endregion

protected override void OnActivityResult(int requestCode, Result resultCode, Intent data) {
    // For single image Selection
    if ((requestCode == PickImageId) && (resultCode == Result.Ok) && (data != null)) {
        Uri uri = data.Data;
        _imageView.SetImageURI(uri);
        path = GetPathToImage (uri);
    }
}
java c# android xamarin xamarin.android
3个回答
0
投票

将setType用于jpeg


0
投票

使用此Intent.setType("image/jpg");代替Intent.setType("image/*");


0
投票

我认为所有给出的答案都是错误的。要求是同时允许jpg和png文件。这仅允许选择给定的文件类型。首先创建mimeTypes数组,包括所有允许的文件类型。然后把它放在意向中。这是代码。

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