Problème :
Un tableau d'entiers est envoyé de l'activité A à l'activité B en utilisant Intention.putExtra. Cependant, dans l'activité B, le tableau est reçu comme « 0 ».
Contexte :
Intent.putExtra() est couramment utilisé pour envoyer de petits types de données comme des chaînes, des entiers, et double entre les activités. Cependant, il n'est pas directement applicable aux tableaux.
Approche incorrecte :
<code class="java">i.putExtra("numbers", array);</code>
Problème :
Le code ci-dessus tente de placez un tableau d'entiers dans l'intention sous forme d'entier. Ceci est incorrect car un tableau ne peut pas tenir dans un seul entier.
Approche correcte :
Pour envoyer un tableau à l'aide de Intent.putExtra, il doit être converti en formulaire qui peut être stockée sous forme de valeur unique. Ceci peut être réalisé en utilisant les méthodes getIntArray() et putExtraIntArray().
<code class="java">// Sending array from Activity A i.putExtra("numbers", array); // Receiving array in Activity B int[] arrayB = extras.getIntArray("numbers");</code>
Remarques supplémentaires :
Assurez-vous que les deux activités ont des déclarations de tableau identiques pour éviter les erreurs d'exécution. C'est également une bonne pratique de vérifier si l'intention contient le supplément attendu avant d'y accéder.
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!