Android - getIntent() à partir d'un Fragment
Je suis en train de passer d'une image à partir d'un fragment à l'autre--et je suis en utilisant ce post comme un guide:
envoyer Bitmap à l'aide de l'intention Android
Ce que je vais avoir des ennuis avec, est à la réception d'activité fragment à l'aide de getIntent(). Il ne reconnaît pas la méthode. il y a certains postes là-bas en disant que ce n'est pas possible d'utiliser getIntent() dans un fragment... mais il doit y avoir un moyen? le code devrait-il aller dans l'activité de l'hôte?
voici ce que je suis en train d'essayer:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String filename = getIntent().getStringExtra("image");
try {
FileInputStream is = this.openFileInput(filename);
imageBitmap = BitmapFactory.decodeStream(is);
is.close();
} catch (Exception e) {
e.printStackTrace();
}
}
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser un
getIntent()
avecFragments
mais vous devez appelergetActivity()
premier. Quelque chose commegetActivity().getIntent().getExtras().getString("image")
pourrait fonctionner.Ce n'est pas que vous ne pouvez pas transmettre des données, c'est que vous ne voulez pas.
À partir du Fragment la documentation:
Si vous jetez un oeil à la
Fragment
de la documentation, il devrait vous guider à travers la façon de faire.Si vous souhaitez obtenir de l'intention de données, vous devez appeler
Fragment's
méthodegetArguments()
, qui renvoieBundle
avec des figurants.