Maison  >  Article  >  Java  >  Comment envoyer un tableau d’entiers entre des activités sous Android ?

Comment envoyer un tableau d’entiers entre des activités sous Android ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-25 10:57:02549parcourir

How to Send an Integer Array Between Activities in Android?

Transfert de tableau incorrect avec Intent.putExtra

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn