Para este tutorial usaremos la estructura que maneje en un tutorial anterior. Aquí la liga
Una vez revizado esto tendremos que hacer algunas modificaciones a los archivos para poder realizar este tutorial.
1.- Modificaremos el archivo segundomain.xml.
segundomain.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Esta es la segunda activity" /> <Button android:id="@+id/btn_ActivityMain" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Regresar al ActivityMain" android:onClick="onClick" /> </LinearLayout>
2.- Tambien modificaremos el archivo Activity2.java para agregar la nueva funcionalidad
Activity2.java
package kenny.master.kenny; import android.app.Activity; import android.os.Bundle; //librerias para este ejemplo import android.content.Intent; import android.net.Uri; import android.view.View; import android.widget.Toast; public class Activity2 extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //Agregamos el archivo xml de la segundomain setContentView(R.layout.segundomain); //Obtener los datos pasados de tipo string usando getStringExtra() Toast.makeText(this, getIntent().getStringExtra("str1"), Toast.LENGTH_SHORT).show(); //Obtener el objeto Bundle Bundle bundle = getIntent().getExtras(); //obtenemos los datos de tipo string usando getString() Toast.makeText(this, bundle.getString("str2"), Toast.LENGTH_SHORT).show(); } //Creo mi evento onClick public void onClick(View v ) { //Usamos un objeto intent para regresar los datos Intent intent = new Intent(); //Usamos el metodo setData() para regresar algun valor intent.setData(Uri.parse("Aqui casual programando en Android")); //Establece el resultado con OK y le paso mi intent setResult(RESULT_OK, intent); //Cierro la activity finish(); } }
3.- Modificaremos el MyActivity.java para agregar la nueva funcionalidad.
MyActivity.java
package kenny.master.kenny; import android.app.Activity; import android.os.Bundle; //librerias a utilizar import android.content.Intent; import android.view.View; import android.widget.Toast; public class MyActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } //Creamos nuestros evento onClick public void onClick( View v ) { Intent intent = new Intent("kenny.master.Activity2"); //Uso putExtra() para agregar valores intent.putExtra("str1", "Yo soy el depredador1220"); //Uso un objeto bundle para agregar valores Bundle extras = new Bundle(); extras.putString("str2", "Apoyame dando clic a la publicidad"); //Adjunto el objeto bundle dentro del intent intent.putExtras(extras); //comienza la activity a obtener el resultado startActivityForResult(intent, 1); } //Si la peticion que pedimos fue correcta, entonces mostrara el dato de la anterior activy //y la mostrara en esta activy public void onActivityResult( int requestCode, int resultCode, Intent data) { if( requestCode == 1 ) { if(resultCode == RESULT_OK ) { //obtenemos el resultado usando getData() Toast.makeText(this, data.getData().toString(), Toast.LENGTH_SHORT).show(); } } } }
4.- Los archivos main.xml y Manifest.xml se mantendran igual.
No hay comentarios:
Publicar un comentario