Get Image from the Gallery and Show in ImageView

前端 未结 2 640
夕颜
夕颜 2020-11-30 05:49

I need to get an image from the gallery on a button click and show it into the imageview.

I am doing it in the following way:

    btn_image_button.se         


        
相关标签:
2条回答
  • you can try this.

    paste this code in your button click event.

    Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
    photoPickerIntent.setType("image/*");
    startActivityForResult(photoPickerIntent, RESULT_LOAD_IMG);
    

    and below code is your on activity result

    @Override
        protected void onActivityResult(int reqCode, int resultCode, Intent data) {
            super.onActivityResult(reqCode, resultCode, data);
    
    
            if (resultCode == RESULT_OK) {
                try {
                    final Uri imageUri = data.getData();
                    final InputStream imageStream = getContentResolver().openInputStream(imageUri);
                    final Bitmap selectedImage = BitmapFactory.decodeStream(imageStream);
                    image_view.setImageBitmap(selectedImage);
                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                    Toast.makeText(PostImage.this, "Something went wrong", Toast.LENGTH_LONG).show();
                }
    
            }else {
                Toast.makeText(PostImage.this, "You haven't picked Image",Toast.LENGTH_LONG).show();
            }
        }
    

    its helpfull for you.

    0 讨论(0)
  • 2020-11-30 05:57

    I use this code: This code used to start gallery activity.

    Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
    photoPickerIntent.setType("image/*");
    startActivityForResult(photoPickerIntent, GALLERY_REQUEST);
    

    And get the result in:

    @Override
        public void onActivityResult(int requestCode, int resultCode, Intent data) {
            super.onActivityResult(requestCode, resultCode, data);
            if(resultCode == Activity.RESULT_OK)
            switch (requestCode){
                case GALLERY_REQUEST:
                    Uri selectedImage = data.getData();
                    try {
                        Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), selectedImage);
                        carImage.setImageBitmap(bitmap);
                    } catch (IOException e) {
                        Log.i("TAG", "Some exception " + e);
                    }
                    break;
            }
        }
    

    And don't forget to declare permission in AndroidManifest.

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    
    0 讨论(0)
提交回复
热议问题