Heim  >  Artikel  >  Java  >  Wie sende ich ein ganzzahliges Array zwischen Aktivitäten in Android?

Wie sende ich ein ganzzahliges Array zwischen Aktivitäten in Android?

Barbara Streisand
Barbara StreisandOriginal
2024-10-25 10:57:02549Durchsuche

How to Send an Integer Array Between Activities in Android?

Falsche Array-Übertragung mit Intent.putExtra

Problem:
Ein Array von Ganzzahlen wird von Aktivität A an Aktivität B gesendet mit Intent.putExtra. In Aktivität B wird das Array jedoch als „0“ empfangen.

Hintergrund:
Intent.putExtra() wird häufig zum Senden kleiner Datentypen wie Zeichenfolgen, Ganzzahlen usw. verwendet. und verdoppelt sich zwischen den Aktivitäten. Es ist jedoch nicht direkt auf Arrays anwendbar.

Falscher Ansatz:

<code class="java">i.putExtra("numbers", array);</code>

Problem:
Der obige Code versucht dies Fügen Sie ein ganzzahliges Array als Ganzzahl in die Absicht ein. Dies ist falsch, da ein Array nicht in eine einzelne Ganzzahl passen kann.

Richtiger Ansatz:

Um ein Array mit Intent.putExtra zu senden, muss es in ein Formular konvertiert werden das kann als einzelner Wert gespeichert werden. Dies kann durch die Verwendung der Methoden getIntArray() und putExtraIntArray() erreicht werden.

<code class="java">// Sending array from Activity A
i.putExtra("numbers", array);

// Receiving array in Activity B
int[] arrayB = extras.getIntArray("numbers");</code>

Zusätzliche Hinweise:
Stellen Sie sicher, dass beide Aktivitäten identische Array-Deklarationen haben, um Laufzeitfehler zu vermeiden. Es empfiehlt sich auch, vor dem Zugriff darauf zu prüfen, ob die Absicht das erwartete Extra enthält.

Das obige ist der detaillierte Inhalt vonWie sende ich ein ganzzahliges Array zwischen Aktivitäten in Android?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn