envoyer des données à partir de l'activité à l'autre sans le démarrer
Si j'ai deux activités Activity1 et Activity2 et je veux envoyer des données à partir Activity1 à Activity2 sans Démarrer Activity2
Je sais que si je veux commencer à Activity2 j'ai utiliser ce code Activity1.java
Intent intent ;
Bundle bundle = new Bundle();
bundle.putString(BG_SELECT, hexColor);
intent = new Intent(getApplicationContext(), Activity2.class);
intent.putExtras(bundle);
//this is to start but I want just refresh Activity2 not start it
startActivityForResult(intent, uniqueNo);
et dans Activity2.java
bundle = getIntent().getExtras();
if (bundle != null) {
bgColor = bundle.getString(SebhaActivity.BG_SELECT);
System.out.println("in Activity2, selected BG: "+bgColor);
}
Comment actualiser Activity2 de trouver des données sans le lancer?
Merci à l'Avance.
Je pense que vos concepts de l'Android de l'activité du cycle de vie sont très faille. Android seulement ont une activité de course à la fois. Et pas des activités telles congé de threads en cours d'exécution après onPause(). En outre, l'activité != l'application, pensez à ce sujet.
Je pense que les downvotes pour cette question sont injustifiés. Même si les Activités sont mal compris par les O. P., la question est toujours posée par de nombreux Android les débutants, et une bonne réponse serait de les guider le long.
Je pense que les downvotes pour cette question sont injustifiés. Même si les Activités sont mal compris par les O. P., la question est toujours posée par de nombreux Android les débutants, et une bonne réponse serait de les guider le long.
OriginalL'auteur Emy Alsabbagh | 2013-02-12
Vous devez vous connecter pour publier un commentaire.
si l'activité suivante (où vous avez besoin de données, Activity2 je.e) ne démarre pas à partir d'ici, vous pouvez enregistrer les données dans SharedPreferences dans l'Activité 1 et y accéder dans activity2 quand vous y arrivez
OriginalL'auteur baboo
Vous pouvez utiliser le
LocalBroadcastManager
. Pour votre scénario, c'est à dire, Activity1 envoie quelque chose à Activity2, vous voulez faire quelque chose comme ce qui suit.Sur Activity2, vous devez d'abord enregistrer le récepteur, par exemple, sur sa méthode onCreate, puis obtenir de l'intention à l'aide d'un BroadcastReceiver comme suit
Ensuite, enregistrer le
mReceiver
pour récupérer leBG_SELECT
champOriginalL'auteur Eduardo
Essayer cela,
Créer un non de l'activité de la classe.
Déclarer cette non-activité de la classe dans votre classe d'activité.
OriginalL'auteur MuraliGanesan
Si vous souhaitez partager des données entre 2 activités alors que les deux sont en cours d'exécution, vous devez utiliser un peu de stockage disponible pour les deux.
Vérifier la
Shared Preferences
, ou de faire une classe de stockage qui peuvent être accessibles dans les deux activités. Il n'y a pas de véritable "méthode" pour le faire.OriginalL'auteur Charbel
Je pense ici SharedPreferences est devenu imbattable.
Votre Code va comme ceci
Dans la Première Activité à Partir duquel vous partagez des données
Dans la Deuxième Activité, d'obtenir des données de cette
Également visiter
https://developer.android.com/training/data-storage/shared-preferences.html
Espère que ce sera utile.
OriginalL'auteur Nitin Khanna