1

J'essaie de sélectionner et d'apporter l'image de la galerie, je pourrais apporter pour la version 4.4.2 mais 5.0.0 ou ci-dessus cela ne fonctionne pas.Sélectionnez l'image de la galerie en utilisant l'intention

Lorsque imageview1 est cliquée:

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(); 
     } 

     } 


    } 

Il ne fonctionne pas pour 5.0.0 ou au-dessus de sorte que dois-je faire?

+1

'ne pas fonctionner pour 5.0.0 ou plus». Vous devriez commencer à téléphoner ce qui ne fonctionne pas. Je pose le premier bitmap que vous essayez de générer est 'null'. Tu aurais dû nous le dire. – greenapps

+0

Les images ne sont pas vues (Lorsque l'utilisateur clique sur imageview1, dans l'écran de la galerie, les images ne sont pas vues, juste leur taille voit leurs vignettes ne sont pas vues) si j'utilise ce code dans les versions 5.0 ou supérieures. Enfin, ma réponse fonctionne pour toutes les versions. Dans l'écran de la galerie, toutes les images sont vues. –

+0

Vous ne réagissez même pas que le bitmap sera nul. Êtes-vous un programmeur? – greenapps

Répondre

2

essayer cette

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)); 
    } 
} 
-1

Enfin, je résolu mon problème avec le changement d'écoute clic.

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ı"); 


    } 
}); 
+1

'J'ai résolu mon problème en changeant l'écouteur de clic. Votre écoute sur le clic est la même. Mais vous avez changé l'action de l'intention utilisée. Ce qui est vraiment une mauvaise idée. – greenapps

+0

Pourquoi une mauvaise idée? Il a résolu mon problème maintenant il fonctionne pour toutes les versions. –