Search code examples
androidandroid-cameraandroid-imageview

ImageView is not showing captured Image using Camera in android


I am trying to choose an image for registration. When clicking the ImageView, the user will be given a choice between taking a picture or choosing from his/her gallery. When the user chooses the gallery option, it will display the selected image. When the user chooses the camera option, the ImageView does not display the image. Below is my code for the OnActivityResult

protected void onActivityResult(int requestCode, int resultCode, Intent imgdata) {
        super.onActivityResult(requestCode, resultCode, imgdata);
        if (requestCode == SELECT_IMAGE && resultCode == RESULT_OK && imgdata != null) {
            selectedimage = imgdata.getData();
            try {
                InputStream inputStream = getContentResolver().openInputStream(selectedimage);
                Bitmap yourselectedimage = BitmapFactory.decodeStream(inputStream);
                imgchild.setImageBitmap(yourselectedimage);

            } catch (Exception e) {
                e.printStackTrace();
                Toast.makeText(getApplicationContext(), "Hello", Toast.LENGTH_SHORT).show();
            }
        }
        if (requestCode == CAPTURE_IMAGE && resultCode == RESULT_OK && imgdata != null) {
            camImg =(Bitmap) imgdata.getExtras().get("img");
            try {
                imgchild.setImageBitmap(camImg);

            } catch (Exception e) {
                e.printStackTrace();
                Toast.makeText(getApplicationContext(), "Hello", Toast.LENGTH_SHORT).show();
            }
        }
    }

The ImageView should display the taken picture from the camera.


Solution

  • I think it should be like this

        Bitmap imageBitmap = (Bitmap) extras.get("data");
        mImageView.setImageBitmap(imageBitmap);