protected override void OnPostExecute(Bitmap bitmap) { if (bitmap != null) { MemoryStream stream = new MemoryStream(); bitmap.Compress(Bitmap.CompressFormat.Jpeg, 50, stream); byte[] bitmapData = stream.ToArray(); Set2 set2 = new Set2(); set2.Galleryimage(bitmapData); bitmap.Recycle(); GC.Collect(); } }
public void GalleryMedia() { var imagePicker = new UIImagePickerController { SourceType = UIImagePickerControllerSourceType.PhotoLibrary, MediaTypes = UIImagePickerController.AvailableMediaTypes(UIImagePickerControllerSourceType.PhotoLibrary) }; imagePicker.AllowsEditing = true; var window = UIApplication.SharedApplication.KeyWindow; var vc = window.RootViewController; while (vc.PresentedViewController != null) { vc = vc.PresentedViewController; } vc.PresentViewController(imagePicker, true, null); imagePicker.FinishedPickingMedia += (sender, e) => { UIImage originalImage = e.Info[UIImagePickerController.EditedImage] as UIImage; if (originalImage != null) { var pngImage = originalImage.AsPNG(); byte[] myByteArray = new byte[pngImage.Length]; System.Runtime.InteropServices.Marshal.Copy(pngImage.Bytes, myByteArray, 0, Convert.ToInt32(pngImage.Length)); set2 = new Set2(); set2.Galleryimage(myByteArray); } Device.BeginInvokeOnMainThread(() => { vc.DismissViewController(true, null); }); }; imagePicker.Canceled += (sender, e) => vc.DismissViewController(true, null); }