2016-05-27 1 views
-4

Salut, je reçois le problème d'envoyer les données de la deuxième activité première activitécomment pouvons-nous envoyer des données de la première activité à la seconde activité et deuxième activité à première activité bu en utilisant l'intention

Intent i=new Intent(); 
i.setClass(SecondActivity.this,MainActivity.class); 
Toast.makeText(SecondActivity.this, "this is second activity", Toast.LENGTH_SHORT).show(); 
String name=ed1.getText().toString(); 
i.putExtra("ok",name); 
setResult(RESULT_OK, i); 
startActivity(i); 

comment pouvons-nous recive les données sur la première activité

+0

Quel est le problème u deviennent? –

Répondre

0

d'abord, définir une variable dans votre première activité comme celui-ci (100 est juste au hasard, choisir ce que vous voulez):

private static final int SECOND_ACTIVITY = 100; 

puis dans votre première activité vous commencez la deuxième activité comme celle-ci:

Intent intent = new Intent(FirstActivity.this, SecondActivity.class); 
startActivityForResult(intent, SECOND_ACTIVITY); 

remplacer également onActivityResult dans votre première activité:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (requestCode == SECOND_ACTIVITY) { 
     if (resultCode == RESULT_OK) { 
      String foo = data.getStringExtra("foo"); 
     } 
    } 
} 

lorsque vous avez terminé votre deuxième activité mettre données, comme ceci:

Intent data = new Intent(); 
data.putExtra("foo", "bar"); 
setResult(RESULT_OK, data); 
finish(); 
0

Voici un exemple de travail pour obtenir des données de la deuxième activité.

//First activity 
private static final int PLAY_GAME = 1010; 

@Override 
protected void onActivityResult(int requestCode, 
           int resultCode, Intent data) { 
    if (requestCode == PLAY_GAME && resultCode == RESULT_OK) { 

     String getData = data.getExtras().getString("returnStr"); 

    } 
    super.onActivityResult(requestCode, resultCode, data); 
} 





//second activity 
Intent i = getIntent(); 
i.putExtra("returnStr", data); 
    setResult(RESULT_OK,i); 
    finish();