android - studio - Pasando un paquete en startActivity()?
intent bundle (4)
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 a través de la intención. En su actividad actual, establezca una intención como esta,
Intent intent = new Intent(this,NewActivity.class);
intent.putExtra(key,value);
startActivity(intent);
Ahora en su actividad nueva, puede obtener ese valor de una intención como esta,
String value = getIntent().getExtras().getString(key);
¿Cuál es la forma correcta de pasar un paquete a la actividad que se inicia desde la actual? Propiedades compartidas?
Puede usar el paquete de la intención:
Bundle extras = myIntent.getExtras();
extras.put*(info);
O un paquete completo:
myIntent.putExtras(myBundle);
Es esto lo que estás buscando?
Tienes pocas opciones:
1) Utiliza el Bundle del Intent :
Intent mIntent = new Intent(this, Example.class);
Bundle extras = mIntent.getExtras();
extras.putString(key, value);
2) Crea un nuevo paquete
Intent mIntent = new Intent(this, Example.class);
Bundle mBundle = new Bundle();
mBundle.putString(key, value);
mIntent.putExtras(mBundle);
3) Use el método abreviado putExtra() de la intención
Intent mIntent = new Intent(this, Example.class);
mIntent.putExtra(key, value);
Luego, en la Actividad lanzada, los leerías a través de:
String value = getIntent().getExtras().getString(key)
NOTA: Los paquetes tienen métodos de "obtener" y "poner" para todos los tipos primitivos, Parcelables y Serializables. Acabo de utilizar cadenas con fines de demostración.
Pasar datos de una actividad a la actividad en Android
Un intento contiene la acción y opcionalmente datos adicionales. Los datos se pueden pasar a otra actividad utilizando el putExtra()
intent 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 objetos Parceable and Serializable
de una actividad a otra.
Intent intent = new Intent(context, YourActivity.class);
intent.putExtra(KEY, <your value here>);
startActivity(intent);
Recuperando datos del paquete de la actividad de Android
Puede recuperar la información utilizando los métodos getData()
en el objeto Intent. El objeto Intent se puede recuperar a través del 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);
}