serkan stack
serkan stack

Reputation: 155

Select image from Gallery using Intent

I am trying to select and bring image from gallery, I could bring for 4.4.2 version but 5.0.0 or above it is not working.

When imageview1 is clicked:

imageview1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                Intent galeri_int = new Intent();
                galeri_int.setType("image/*");
                galeri_int.setAction(Intent.ACTION_GET_CONTENT);
                galeri_int.addCategory(Intent.CATEGORY_OPENABLE);


                startActivityForResult(galeri_int,44);

                Log.d("tık","tıklandı");


            }
        });

OnActivityResult:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data){


        InputStream stream = null;

        if(data  !=null){

        try {
            stream = getContentResolver().openInputStream(data.getData());
            bitmapx = BitmapFactory.decodeStream(stream);
            stream.close();
            Bitmap resized = resize(bitmapx,1000,1000);

           imageview.setImageBitmap(resized);

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        }


    }

It is not working for 5.0.0 or above so what should I do?

Upvotes: 1

Views: 3965

Answers (2)

serkan stack
serkan stack

Reputation: 155

Finally, I solved my problem with changing click listener.

imageview1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {

        Intent i = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);

        startActivityForResult(i,44);

        Log.d("tık","tıklandı");


    }
});

Upvotes: -1

user2934536
user2934536

Reputation: 149

try this

Intent intent = new Intent();  
    intent.setType("image/*");  
    intent.setAction(Intent.ACTION_GET_CONTENT);  
    startActivityForResult(Intent.createChooser(intent, "Choose Picture"), 1);

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
    if(resultCode==RESULT_CANCELED)
    {
        // action cancelled
    }
    if(resultCode==RESULT_OK)
    {
        Uri selectedimg = data.getData();
        imageView.setImageBitmap(MediaStore.Images.Media.getBitmap(this.getContentResolver(), selectedimg));
    }
}

Upvotes: 2

Related Questions