2011-09-22 3 views
-1

J'ai 4 activités A, B, C, D. J'ai besoin de démarrer l'activité 'A' (elle consiste en un textview, un bouton) et de l'activité 'A' je dois commencer l'activité 'B' (à l'aide d'un bouton).StartActivityForResult

Maintenant, De 'B' j'ai besoin de démarrer 'C' & Activités 'D' (Condition: Button1 (Activité 'B') est frappé puis il devrait commencer Activité 'C', Bouton2 (Activité 'B') est frappé alors il devrait commencer l'activité 'D').

- L'activité 'C' est constituée d'un champ EditText & a Bouton. - L'activité 'D' se compose d'un bouton EditText & a. "D" et appuyez sur le bouton, le résultat est tel que le texte entré doit apparaître dans TextView de l'activité 'A'. Ici, lorsque je saisis du texte dans Modifier le texte de l'activité 'C' &

Iam un débutant à Android, Ple m'aider à passer à travers cela. Merci d'avance.

+0

Ne pas oublier d'accepter réponse si elle vous aide – Abhi

Répondre

0

Essayez ceci: faire une variable statique dans l'activité 'C':

public static String text=""; 

lire ensuite les données EditText en chaîne dans OnClick bouton:

dans votre Activity'C » sur le bouton clic:

text=edittext.getText().toString(); 
Intent i=new Intent(ActivityC.this,ActivityA.class) 
startActivity(in); 
finish(); 

Dans l'activité 'A'

ensemble ce texte valeur dans la méthode onResume:

Protected void OnResume() 
{ 
super.OnResume(); 
textview.setText(Activity'c'.text) 
} 

cela peut aider à you.ask des doutes

+0

seul problème ici est que vous ne pouvez pas vraiment compter sur l'activité C ou D étant actif après que vous avez quitté. Bien sûr, ils restent dans la mémoire pendant un petit moment, mais à un moment donné, ils seront tués et cela pourrait être tout de suite. – ryandlf

0

Vous êtes désireux de transmettre des données de l'activité C ou D de retour à A à un moment donné? Utilisez une classe d'application (google it) et définissez une variable à partir de vos activités C ou D, puis appelez cette variable lorsque vous revenez à A et affichez le texte.

0

Utiliser `startActivityForResult() vous pouvez faire comme ceci:

  1. startActivityForResult() pour l'activité B.
  2. startActivityForResult() pour l'activité c.
  3. Lorsque le bouton est touché dans l'activité c terminer l'activité après avoir défini les données.
  4. maintenant vous obtiendrez appelez onActivityResult() dans l'activité B. répétez le processus de définition des données dans B et terminer l'activité.
  5. maintenant, vous obtiendrez l'appel dans onActivityResult() dans l'activité A, vous avez les données l'utilisent maintenant.

même processus sera pour l'activité D.

Questions connexes