jueves, 4 de octubre de 2012

Capitulo 5 Android - Crear otra activity



Capitulo 5 – Activity 2
Abrimos Eclipse y pinchamos en Archivo / Nuevo / Android Ap
Ponemos como nombre de aplicación Activity2 en package ejemplos.android.



Damos nombre a la Activity, dejar el que pone por omision.
La actividad que crearemos tendra 1 textview, 1 edittext y un boton.
El usuario pondra una web y al dar el boton pasara a otra pantalla en la que se vera la web indicada.
El ejemplo servira para ver como se programa el paso de una pantalla o activity a otra.



Ponemos con el boton derecho en cada componente el nombre a su id para referirlo mas adelante: Textview = tv1, Edittext = et1, Button = bt1.



Después de crear la pantalla principal y distribuir el textview… y demas, señalamos el boton y buscamos su opcion Onclick (pulsando con el boton derecho en el boton), le ponemos de nombre ir, que después utilizaremos en el codigo.



El codigo de esta actividad es

packageejemplos.android;

importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.content.Intent;
import android.view.View;
importandroid.widget.EditText;

public classMainActivity extends Activity {
    private EditText et1;
   
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);       
        et1=(EditText)findViewById(R.id.et1);
      }
     public void ir(View view) {
         Intent i = new Intent(this, segundaactividad.class );
         i.putExtra("direccion", et1.getText().toString());
         startActivity(i);       
    }
}

En este codigo se pasa la direccion obtenida en et1 (dada por el usuario) a la segunda actividad al pulsar el boton ir.
Observese que se usa i.putExtra con dos parametros el recogido en et1 se asigna a direccion y se inicia la segunda actividad con startActivity poniendole de parametro el intent del principio, tomado en este ejemplo como i.

Ahora creamos la segunda pantalla o activity, para lo cual tenemos que pulsar con el boton derecho en layout, nuevo, android xml file



Lo llamaremos segundaactividad.
En ella insertamos un button y un webview.



Al boton lo llamamos bt2 y de texto ponemos cerrar.
Ahora pasamos a crear la clase java, pulsamos con el derecho en src, nueva clase.



Le ponemos de nombre segundaactividad.
El codigo de la segundaactividad es:

packageejemplos.android;

importandroid.os.Bundle;
importandroid.view.View;
importandroid.webkit.WebView;

public classsegundaactividad extends MainActivity {
    private WebView webView1;
   
    @Override
    public void onCreate(Bundle b) {
        super.onCreate(b);
        setContentView(R.layout.segundaactividad);
       
        webView1=(WebView)findViewById(R.id.webView1);
       
        Bundle bundle=getIntent().getExtras();
        webView1.loadUrl("http://"+bundle.getString("direccion"));
    }
   
    public void cerrar(View view) {
        finish();
    }
}

Esta parte de codigo recupera el dato pasado desde la otra actividad al pulsar el boton ir.


Pasamos a incluir la activity nueva en el android manifest.



Señalamos androidmanifest.xml, aplicación, add, activity, ponemos su nombre y le damos permiso para internet.


 Pasamos a ejecutar mediante el boton play, tardara un rato si aun no teniamos abierto el emulador del movil.






No hay comentarios:

Publicar un comentario

Se procedera a revision para su pronta publicacion en caso de que no incumpla las normas de blogger.