"If a worker wants to do his job well, he must first sharpen his tools." - Confucius, "The Analects of Confucius. Lu Linggong"
Front page > Programming > How to Send an Array of Integers Between Activities using Intent.putExtra()?

How to Send an Array of Integers Between Activities using Intent.putExtra()?

Published on 2024-12-21
Browse:323

How to Send an Array of Integers Between Activities using Intent.putExtra()?

Sending Arrays Using Intent.putExtra()

When transferring data between activities, it may be necessary to pass complex data structures such as arrays. This article explores how to effectively send an array of integers from one activity (A) to another (B) using Intent.putExtra().

Problem:

In activity A, an array of integers is initialized and intended to be sent to activity B. However, upon receiving the data in activity B, only the value '0' is retrieved instead of the expected array values.

Solution:

The issue lies in the data type mismatch when setting and retrieving the extra. In the provided code:

  1. When sending the data, the putExtra() method is used with an array argument:

    i.putExtra("numbers", array);
  2. When receiving the data, the getExtras() method attempts to retrieve the data as a single integer:

    int arrayB = extras.getInt("numbers");

The correct approach is to receive the data as an array by using the getIntArray() method instead:

int[] arrayB = extras.getIntArray("numbers");

By using getIntArray(), the received data can be successfully stored in an integer array.

Latest tutorial More>

Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.

Copyright© 2022 湘ICP备2022001581号-3