Aller au contenu

Comment passer une Activity à une autre


Chronogps

Recommended Posts

J'ai une MainActivity

public class MainActivity extends Activity implements OnClickListener,

{

Intent intent = new Intent (this,SubActivity.class);

startActivity(intent);

}

Et une SubActivity

public class SubActivity extends Activity implements OnClickListener,

{

MainActivity Param

}

J'aimerai pouvoir instancier Param a la valeur du MainActivity.

Idéalement il faudrait faire un

intent.putExtra("Param",this);

au niveau du MainActivity

et récupérer la valeur via :

Param = getIntent().get???("Param");

Au niveau du SubActivity

On ne peut pas passer un objet via ce système ?

Lien vers le commentaire
Partager sur d’autres sites

ah erreur de ma part.

On peut passer un objet en utilisant la méthode putExtra

Dans ton activity source tu met :

Intent i = new Intent(this, ActivityDestination.class);
i.putExtra("cle", objet);
startActivity(i);

et dans ton activity de destination tu récuperes l'objet comme ceci :

Bundle b = getIntent().getExtras();
Objet objet = (Objet) b.getSerializable("cle");

Il faut que ton objet implements serializable

Lien vers le commentaire
Partager sur d’autres sites

Merci pour l'astuce (j'avoue ne pas trop comprendre l'astuce du Serialize, j'ai ajouté implements Serialize et le compilo m'a ajouté une ligne :

private static final long serialVersionUID = 1L;

Ca suffit ? Ca fait quoi au juste ?).

Problème : cela se compile mais plante dans le StartActivity (j'atteins pas le OnCreate du SubActivity)

Le compilo me dit Source not found dans ViewRoot.HandleMessage et l'application plante si je continues...

Une idée ?

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...