À l'aide de onResume() pour l'activité d'actualisation
Je ne peux pas pour la vie de me comprendre comment avoir une activité actualisation après avoir appuyé sur le bouton retour. J'ai actuellement Une activité qui déclenche une intention de goto B et tandis que sur la loi sur B si vous appuyez sur la touche back, je veux revenir à la loi, mais il ont actualiser lui-même. Je peux utiliser cette intention d'actualiser l'activité actuellement:
Intent refresh = new Intent(this, Favorites.class);
startActivity(refresh);
this.finish();
Mais je ne peux pas comprendre comment utiliser correctement le onResume() fonction pour me rafraîchir la loi sur les Un après de revenir à elle.
La raison probable que votre actualisation actuel régime fonctionne est parce que vous êtes l'exécution de l'activité dans la norme launchMode. Cela signifie que chaque invocation de startActivity(actualiser) génère une nouvelle instance de l'activité de A. Puisque chaque nouvelle instance va à travers le onCreate(), la création de ces instances inutiles donne l'apparence de l'actualisation de votre activité. Pour ce faire correctement, vous devriez vraiment identifier le code dans onCreate() qui est responsable de "rafraîchissant" de l'activité et de la déplacer à onResume(), Ovidiu indiqué ci-dessous.
OriginalL'auteur Nick | 2011-07-27
Vous devez vous connecter pour publier un commentaire.
Si vous avez besoin d'un spécial comportement de
ActivityA
en rentrant deActivityB
, vous devez utiliserstartActivityForResult(Intent intent, int requestCode)
au lieu destartActivity(Intent intent)
:De cette façon, vous serez en mesure de détecter
ActivityB
's résiliation dansActivityA
par la surchargeonActivityResult(int requestCode, int resultCode, Intent intent)
:Cela fonctionne même si vous résiliez
ActivityB
par la presse de la touche retour. LeresultCode
seraRESULT_CANCELLED
par défaut dans ce cas.OriginalL'auteur Shlublu
utilisation
startActivityForResult(intent, requestCode);
pour commencer
Activity B
deActivity A
puis dans
Activity A
remplaceronActivityResult(int requestCode, int resultCode, Intent data)
là, vous pouvez actualiser votre
Activity A
OriginalL'auteur Mohammad Ersan
Vous devez placer le code qui met à jour l'INTERFACE utilisateur de votre Activité dans le
onResume()
méthode. Vous devriez peut-être poster un peu plus de code, ou d'expliquer exactement ce que vous voulez mettre à jour.OriginalL'auteur Ovidiu Latcu