onActivityResult() pas appelée lorsque l'Activité a commencé à partir de Fragment
J'ai un problème avec l'importation d'une image de l'Album dans Android, parce que le onActivityResult()
méthode n'est jamais appelé.
C'est le code que j'ai écrit (appelé à partir d'un fragment pas une activité):
Intent galleryIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
getActivity().startActivityForResult(galleryIntent, PICK_IMAGE);
Et en passant, j'ai défini le onActivityResult()
mais il n'est jamais déclenché:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d(TAG, "onActivityResult"); //not printed
}
Une idée de ce qui est mal à cela?
Merci!
- ajouter constructeur , super.onActivityResult(requestCode, resultCode, données);
- J'ai édité la question, en effet, mon code a déjà cette ligne.
- Vous devez Sélectionner une image à partir de la Galerie de droite?
- Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null); intent.setType("image/*"); intent.putExtra("de retour de données", true); startActivityForResult(intent, 1);
Vous devez vous connecter pour publier un commentaire.
Avoir
onActivityResult()
appelé dans le fragment, vous devriez appeler le fragment de la version destartActivityForResult()
, pas de l'activité. Donc, dans votre fragment de code, remplacezavec
Avec ce code:
La onActivityResult doit être dans l'Activité qui contient le Fragment. À partir de là, vous pouvez appeler une méthode de l'fragment, pas dans le fragment.
à y faire ce que vous voulez
Essayez de cet Extrait :