"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo enviar una matriz de números enteros entre actividades usando Intent.putExtra()?

¿Cómo enviar una matriz de números enteros entre actividades usando Intent.putExtra()?

Publicado el 2024-12-21
Navegar:592

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

Envío de matrices mediante Intent.putExtra()

Al transferir datos entre actividades, puede ser necesario pasar estructuras de datos complejas, como matrices. Este artículo explora cómo enviar efectivamente una matriz de números enteros de una actividad (A) a otra (B) usando Intent.putExtra().

Problema:

En actividad A, se inicializa una matriz de números enteros y se pretende enviarla a la actividad B. Sin embargo, al recibir los datos en la actividad B, solo se recupera el valor '0' en lugar de la matriz esperada. valores.

Solución:

El problema radica en la discrepancia del tipo de datos al configurar y recuperar el extra. En el código proporcionado:

  1. Al enviar los datos, se utiliza el método putExtra() con un argumento de matriz:

    i.putExtra("numbers", array);
  2. Al recibir los datos, el método getExtras() intenta recuperar los datos como un solo entero:

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

El enfoque correcto es recibir los datos como una matriz utilizando getIntArray método () en su lugar:

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

Usando getIntArray(), los datos recibidos se pueden almacenar exitosamente en una matriz de enteros.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3