J'ai 2 activités nommées firstActivity.java, secondActivity.java. Lorsque je clique sur un bouton dans firstActivity, j'appelle secondActivity. Mais quand je reviens de secondActivity, basé sur le résultat, j'ai besoin d'ignorer certaines étapes de firstactivity qui sont effectuées dans sa méthode onCreate(). En revenant de secondActivity j'ai utilisé Bundle pour mettre les données que j'ai données en entrée à Intent, j'ai accédé à ces données dans onCreate() de la première activité. Mais lorsque j'ai démarré l'application d'activité plantait en affichant NullPointerException dans la ligne où j'accède aux données de la 2ème activité. la raison pour laquelle je pense que lorsque l'application est lancée pour la première fois il n'y aura pas de valeurs dans Bundle, donc je reçois nullpointer exception.so, quelqu'un peut-il m'aider à résoudre ce problème?Enregistrement de l'état entre les activités
Merci à l'avance,
Si votre pile d'appels est FirstActivity -> (bouton sur l'écran) -> SecondActivity -> (bouton de retour matériel) -> FirstActivity ... alors onCreate() n'est plus appelé pour FirstActivity. – Vuk
Vuk, vous déclarez une mauvaise hypothèse. Alors que le FirstActivity est en arrière-plan, il peut être OU peut ne pas être détruit par le système d'exploitation (cela dépend de l'état actuel de la RAM). –
Oui Arhimed, je suis d'accord. Bien que je voudrais personnellement ajouter tout le code que 'Android_programmer_camera' voulait être exécuté plusieurs fois dans ... mmm ... disons onResume() ou onRestoreInstance() ou quelque chose. Mon point étant qu'il ne peut pas compter sur une condition de faible RAM chaque fois qu'il commute entre Activités et onCreate() étant appelé à chaque fois. Mais vous avez raison, j'étais un peu explicite à propos de onCreate() ne jamais être multi-appelé, cela peut arriver. Bravo :) – Vuk