Beispiel #1
0
        public void getImageBitmapAsync(Bitmap bitmap)
        {
            horizontal_recycler_view.Visibility = ViewStates.Visible;



            var stream = new MemoryStream();

            bitmap.Compress(Bitmap.CompressFormat.Jpeg, 100, stream);
            byte[] imageInByte = stream.ToArray();
            byteList.Add(imageInByte);

            long lengthbmp = imageInByte.Length;

            imageSize = imageSize + lengthbmp;

            AddUpdateImageModel addUpdateImage = new AddUpdateImageModel();

            base64ImageCode = BasicUtils.GetInstance().ConvertBitmapToBase64(bitmap);
            img_event1.SetImageBitmap(bitmap);

            addUpdateImage.bitmap     = bitmap;
            addUpdateImage.ImageUrl   = base64ImageCode;
            addUpdateImage.CountImage = imagesList.Count + 1;
            imagesList.Add(addUpdateImage);
            addUpdateImageAdapter.NotifyDataSetChanged();
            horizontal_recycler_view.SmoothScrollToPosition(imagesList.Count());
        }
Beispiel #2
0
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            base.OnActivityResult(requestCode, resultCode, data);

            if (resultCode == Result.Ok)
            {
                if (requestCode == REQUEST_TAKE_GALLERY_VIDEO)
                {
                    horizontal_recycler_view.Visibility = ViewStates.Visible;
                    var    uri  = data.Data;
                    string path = BasicUtils.GetActualPathFromFile(uri, this);
                    System.Diagnostics.Debug.WriteLine("Image path == " + path);
                    Bitmap thumb = ThumbnailUtils.CreateVideoThumbnail(path, ThumbnailKind.MiniKind);

                    AddUpdateImageModel addUpdateImage = new AddUpdateImageModel();
                    base64ImageCode = BasicUtils.GetInstance().ConvertBitmapToBase64(thumb);


                    addUpdateImage.bitmap     = thumb;
                    addUpdateImage.ImageUrl   = base64ImageCode;
                    addUpdateImage.CountImage = imagesList.Count + 1;
                    imagesList.Add(addUpdateImage);
                    addUpdateImageAdapter.NotifyDataSetChanged();
                    horizontal_recycler_view.SmoothScrollToPosition(imagesList.Count());
                }
                if (requestCode == CameraCaptureImageRequestCode)
                {
                    PreviewCapturedImage();
                }
                else if (requestCode == CameraCaptureVideoRequestCode)
                {
                    horizontal_recycler_view.Visibility = ViewStates.Visible;
                    var    uri  = data.Data;
                    string path = BasicUtils.GetActualPathFromFile(uri, this);
                    System.Diagnostics.Debug.WriteLine("Image path == " + path);
                    Bitmap thumb = ThumbnailUtils.CreateVideoThumbnail(path, ThumbnailKind.MiniKind);

                    AddUpdateImageModel addUpdateImage = new AddUpdateImageModel();
                    base64ImageCode = BasicUtils.GetInstance().ConvertBitmapToBase64(thumb);


                    addUpdateImage.bitmap     = thumb;
                    addUpdateImage.ImageUrl   = base64ImageCode;
                    addUpdateImage.CountImage = imagesList.Count + 1;
                    imagesList.Add(addUpdateImage);
                    addUpdateImageAdapter.NotifyDataSetChanged();
                    horizontal_recycler_view.SmoothScrollToPosition(imagesList.Count());
                }
                else if (requestCode == PicFromGallery)
                {
                    fileUri = data.Data;

                    Bitmap bitmap = MediaStore.Images.Media.GetBitmap(ContentResolver, fileUri);


                    GetImageFromGallery();
                }
                else if (requestCode == PicCrop && data != null)
                {
                    //get the returned data
                    Android.Net.Uri extras = data.Data;
                    //get the cropped bitmap

                    if (extras != null)
                    {
                        var inp = context.ContentResolver.OpenInputStream(extras);
                        BitmapFactory.Options options = new BitmapFactory.Options();
                        Bitmap cropped_bitmap         = BitmapFactory.DecodeStream(inp, null, options);
                        newBitmap = cropped_bitmap;
                        getImageBitmapAsync(newBitmap);
                    }
                    else
                    {
                        var inp = context.ContentResolver.OpenInputStream(fileUri);
                        BitmapFactory.Options options = new BitmapFactory.Options();


                        //Bitmap cropped_bitmap =
                        MemoryStream stream = new MemoryStream();
                        BitmapFactory.DecodeStream(inp, null, options).Compress(Bitmap.CompressFormat.Jpeg, 50, stream);

                        byte[] bitmapData = stream.ToArray();
                        Bitmap bitmap     = BitmapFactory.DecodeByteArray(bitmapData, 0, bitmapData.Length);


                        newBitmap = bitmap;
                        getImageBitmapAsync(newBitmap);
                    }
                }
            }
        }