Lors du transfert de données entre activités, il peut être nécessaire de transmettre des structures de données complexes telles que des tableaux. Cet article explique comment envoyer efficacement un tableau d'entiers d'une activité (A) à une autre (B) à l'aide de Intent.putExtra().
Problème :
Dans activité A, un tableau d'entiers est initialisé et destiné à être envoyé à l'activité B. Cependant, à la réception des données dans l'activité B, seule la valeur '0' est récupérée à la place des valeurs attendues du tableau.
Solution :
Le problème réside dans la non-concordance des types de données lors de la définition et de la récupération de l'extra. Dans le code fourni :
Lors de l'envoi des données, la méthode putExtra() est utilisée avec un argument tableau :
<code class="java">i.putExtra("numbers", array);</code>
Quand En recevant les données, la méthode getExtras() tente de récupérer les données sous forme d'entier unique :
<code class="java">int arrayB = extras.getInt("numbers");</code>
L'approche correcte consiste à recevoir les données sous forme de tableau en utilisant getIntArray( ) à la place :
<code class="java">int[] arrayB = extras.getIntArray("numbers");</code>
En utilisant getIntArray(), les données reçues peuvent être stockées avec succès dans un tableau d'entiers.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!