ホームページ >Java >&#&チュートリアル >Intent.putExtra() を使用してアクティビティ間で整数の配列を送信するにはどうすればよいですか?
アクティビティ間でデータを転送する場合、配列などの複雑なデータ構造を渡すことが必要になる場合があります。この記事では、Intent.putExtra() を使用して、あるアクティビティ (A) から別のアクティビティ (B) に整数の配列を効果的に送信する方法について説明します。
問題:
Inアクティビティ A では、整数の配列が初期化され、アクティビティ B に送信されるように意図されています。ただし、アクティビティ B でデータを受信すると、期待される配列値の代わりに値「0」のみが取得されます。
解決策:
問題は、エクストラを設定および取得するときのデータ型の不一致にあります。提供されたコードでは:
データを送信するときに、putExtra() メソッドが配列引数とともに使用されます:
<code class="java">i.putExtra("numbers", array);</code>
Whenデータを受信すると、getExtras() メソッドは単一の整数としてデータを取得しようとします。
<code class="java">int arrayB = extras.getInt("numbers");</code>
正しいアプローチは、getIntArray( ) 代わりにメソッド:
<code class="java">int[] arrayB = extras.getIntArray("numbers");</code>
getIntArray() を使用すると、受信したデータを整数配列に正常に格納できます。
以上がIntent.putExtra() を使用してアクティビティ間で整数の配列を送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。