问题:
使用以下方法将整数数组从活动 A 发送到活动 B Intent.putExtra。然而,在 Activity B 中,数组接收为“0”。
背景:
Intent.putExtra() 通常用于发送小数据类型,如字符串、整数、并在活动之间加倍。但是,它并不直接适用于数组。
错误的方法:
<code class="java">i.putExtra("numbers", array);</code>
问题:
上面的代码尝试将整数数组作为整数放入意图中。这是不正确的,因为数组无法容纳单个整数。
正确方法:
要使用 Intent.putExtra 发送数组,必须将其转换为表单可以存储为单个值。这可以通过使用 getIntArray() 和 putExtraIntArray() 方法来实现。
<code class="java">// Sending array from Activity A i.putExtra("numbers", array); // Receiving array in Activity B int[] arrayB = extras.getIntArray("numbers");</code>
附加说明:
确保两个活动具有相同的数组声明以避免运行时错误。在访问意图之前检查意图是否包含预期的额外内容也是一种很好的做法。
以上是如何在 Android 的 Activity 之间发送整数数组?的详细内容。更多信息请关注PHP中文网其他相关文章!