2009-04-20 10 views

Respuesta

359

Usted tiene algunas opciones:

1) el uso del Bundle del Intent:

Intent mIntent = new Intent(this, Example.class); 
Bundle extras = mIntent.getExtras(); 
extras.putString(key, value); 

2) Crear un nuevo paquete

Intent mIntent = new Intent(this, Example.class); 
Bundle mBundle = new Bundle(); 
mBundle.putString(key, value); 
mIntent.putExtras(mBundle); 

3) Usar el método putExtra() atajo de la intención

Intent mIntent = new Intent(this, Example.class); 
mIntent.putExtra(key, value); 


A continuación, en la Actividad lanzado, sería leerlos a través de:

String value = getIntent().getExtras().getString(key) 

NOTA: paquetes tienen "get" y "put" métodos para todos los tipos primitivos, Parcelables y Serializables . Acabo de utilizar cadenas con fines de demostración.

+3

gran mini guía para que la gente entienda. –

+1

@fiXedd, muchas gracias –

+0

@MicroR, no hay diferencia. –

17

Usted puede utilizar el paquete de la Intención:

Bundle extras = myIntent.getExtras(); 
extras.put*(info); 

o todo un paquete:

myIntent.putExtras(myBundle); 

Es esto lo que está buscando?

+1

Y a partir de la intención resultante se llaman getIntent(). GetExtras() .get *() para obtener lo que se ha almacenado antes. – yanchenko

10

pasar datos de una actividad a la actividad en androide

Una intención contiene la acción y los datos opcionalmente adicionales. Los datos se pueden pasar a otra actividad usando el método de intención putExtra(). Los datos se pasan como extras y son key/value pairs. La clave es siempre una cadena. Como valor puede usar los tipos de datos primitivos int, float, chars, etc. También podemos pasar Parceable and Serializable objetos de una actividad a otra.

Intent intent = new Intent(context, YourActivity.class); 
intent.putExtra(KEY, <your value here>); 
startActivity(intent); 

Recuperación de datos de paquete de la actividad androide

Puede recuperar la información mediante getData() métodos del objeto de Intención. El Intención objeto puede ser recuperada mediante el método getIntent().

Intent intent = getIntent(); 
    if (null != intent) { //Null Checking 
    String StrData= intent.getStringExtra(KEY); 
    int NoOfData = intent.getIntExtra(KEY, defaultValue); 
    boolean booleanData = intent.getBooleanExtra(KEY, defaultValue); 
    char charData = intent.getCharExtra(KEY, defaultValue); 
    } 
0

Puede pasar valores de una actividad a otra actividad utilizando el paquete. En su actividad actual, cree un paquete y configure el paquete para el valor particular y pase ese paquete al intento.

Intent intent = new Intent(this,NewActivity.class); 
Bundle bundle = new Bundle(); 
bundle.putString(key,value); 
intent.putExtras(bundle); 
startActivity(intent); 

Ahora en su NewActivity, puede obtener este paquete y recuperar su valor.

Bundle bundle = getArguments(); 
String value = bundle.getString(key); 

También puede pasar datos con la intención. En su actividad actual, establecer la intención de esta manera,

Intent intent = new Intent(this,NewActivity.class); 
intent.putExtra(key,value); 
startActivity(intent); 

En su NewActivity, se puede conseguir que el valor de la intención de esta manera,

String value = getIntent().getExtras().getString(key); 
Cuestiones relacionadas