Stilgardt Posted January 11, 2010 Share Posted January 11, 2010 (edited) Salut à tous, Je rencontre un problème lors du passage de variables entre deux activités. Un gros truc doit m'échapper mais je n'arrive pas à le trouver... J'ai regardé un message plus ancien dans le forum de Hhugues traitant d'un sujet similaire mais ça ne marche pas non plus. Lorsque je passe ma variable de l'activité1 à l'activité2, je trouve toujours "null" quand je suis dans l'activité2. Je m'aperçois aussi en debuggant que le savedInstanceState de l'activité2 est null. Donc c'est peut-être pour ça mais je ne comprends pas comment faire autrement... :| Voici mon code résumé: Activité1 est dans un fichier Activité1.java et Activité dans Activité2.java. public class Activité1 extends Activity{ ... @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... Intent intent = new Intent(Activité1.this, Activité2.class); intent.putExtra("game_variable", "10"); startActivity(intent); ... } public class Activité2 extends Activity{ ... @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... Bundle BundleObject = this.getIntent().getExtras(); String game_version = BundleObject.getString("game_variable"); ... } et game_version est toujours "null"... Alors, j'ai fait une grosse erreur de débutant? :/ Edited January 11, 2010 by Stilgardt Quote Link to comment Share on other sites More sharing options...
Kuiplo Posted January 11, 2010 Share Posted January 11, 2010 C'est juste une petite erreur de méthode que tu appelles dans ton Activity2 : public class Activité2 extends Activity{ ... @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final Intent callingIntent = getIntent(); String game_version = callingIntent.getStringExtra("game_variable"); ... } Normalement ça devrait marcher comme ça. Quote Link to comment Share on other sites More sharing options...
Stilgardt Posted January 11, 2010 Author Share Posted January 11, 2010 (edited) C'est juste une petite erreur de méthode que tu appelles dans ton Activity2 : public class Activité2 extends Activity{ ... @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final Intent callingIntent = getIntent(); String game_version = callingIntent.getStringExtra("game_variable"); ... } Normalement ça devrait marcher comme ça. Merci Kuiplo pour ta réponse! Ca marche parfaitement maintenant! Merci beaucoup et à charge de revanche! :D Edited January 11, 2010 by Stilgardt Quote Link to comment Share on other sites More sharing options...
Mario35 Posted March 24, 2010 Share Posted March 24, 2010 Bonjour, Est-il possible de faire l'inverse au niveau de l'envoie de la variable? Je m'explique. J'aurais voulu que ce soir l'Activity2 qui envoie une variable à l'Activity1. Merci Quote Link to comment Share on other sites More sharing options...
Profete162 Posted March 24, 2010 Share Posted March 24, 2010 (edited) Mario, je te balance le code en gros, j'espere que tu sauras t'y retrouver! Dans l'activité 1; startActivityForResult(i, ACTIVITY_2) et protected void onActivityResult(int requestCode, int resultCode, Intent intent) { super.onActivityResult(requestCode, resultCode, intent); //Codes.mondebug(""+requestCode); switch(requestCode) { (..) case ACTIVITY_2: String monString = intent.getStringExtra("BLABLA"){ break; Dans l'activité 2 bundle.putString("BLABLA",monString); Intent mIntent = new Intent(); mIntent.putExtras(bundle); context.setResult(RESULT_OK, mIntent); Edited March 24, 2010 by Profete162 Quote Link to comment Share on other sites More sharing options...
Mario35 Posted March 24, 2010 Share Posted March 24, 2010 (edited) Merci beaucoup pour l'aide ;) Edited March 24, 2010 by Mario35 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.