J'ai un tableau d'entiers dans l'activité A:
int array[] = {1,2,3};
Et je veux envoyer cette variable à l'activité B, je crée donc une nouvelle intention et utilise la méthode putExtra:
Intent i = new Intent(A.this, B.class);
i.putExtra("numbers", array);
startActivity(i);
Dans l'activité B, je reçois l'info:
Bundle extras = getIntent().getExtras();
int arrayB = extras.getInt("numbers");
Mais ce n'est pas vraiment l'envoi du tableau, je viens d'obtenir la valeur '0' sur le tableau B. J'ai cherché des exemples mais je n'ai rien trouvé de tel.
Vous définissez un extra avec un tableau. Vous essayez ensuite d'obtenir un seul int.
Votre code devrait être:
int[] arrayB = extras.getIntArray("numbers");
Ce code envoie un tableau de valeurs entières
Initialiser la liste des tableaux
List<Integer> test = new ArrayList<Integer>();
Ajouter des valeurs à la liste de tableaux
test.add(1);
test.add(2);
test.add(3);
Intent intent=new Intent(this, targetActivty.class);
Envoyer les valeurs de la liste de tableaux à l'activité cible
intent.putIntegerArrayListExtra("test", (ArrayList<Integer>) test);
startActivity(intent);
ici, vous obtenez des valeurs sur targetActivty
Intent intent=getIntent();
ArrayList<String> test = intent.getStringArrayListExtra("test");