miércoles, 23 de mayo de 2012

WebView en Android

En este ejemplo, explicaré la funcionalidad del elemento WebView de Android.
El ejemplo consiste en mandar una primera pantalla que reciba una página web válida de parte del usuario mediante un EditText y al accionar un botón nos mande un segundo Activity que abra la página web que introdujimos en la pantalla anterior.


Seguiremos los siguientes pasos:


1.  Crearemos un nuevo proyecto llamado "proyectowebview" y lo almacenaremos en el package name: "tutorial.webview". 

2. El Activity por default main.xml deberá lucir así (checar las propiedades de los ID)



Tenemos un control de tipo TextView (tv1), otro de tipo EditText y finalmente otro de tipo Button (button1) debemos inicializar las propiedades de cada uno de estos tres objetos. La propiedad onClick del botón deberemos nombrarla como "ejecutar" ya que así se llamara el método en el código con el que le daremos la funcionalidad al mismo.

3. Procederemos a modificar el código de nuestra primera clase creada por defecto llamada "ProyectoWebviewActivity" o algo por el estilo.

4. El siguiente paso es crear un nuevo en este ejemplo lo llamaremos  actividad2.xml y una nueva clase Clase2.java para agregar la funcionalidad de la pagina que querramos abrir primeramente el .xml debe contener los siguientes elementos:



En esta interfaz disponemos primero un control de tipo Button (button1) y un objeto de la clase WebView (se encuentra en la pestaña "Composite") y lo dejamos con el ID por defecto llamado webView1. En la propiedad onClick del botón hay que escribir "finalizar" para asociarlo con el método del código que le dará la funcionalidad al botón.



5. Ahora en la nueva clase añadiremos el siguiente código:

Tenemos la funcionalidad, ahora como nuestra app deberemos crear un Activity para la Clase2 Seleccionamos el archivo AndroidManifest.xml y activamos la pestaña : "Application", presionamos el botón "add" y seleccionamos "Activity".

Por último seleccionamos en "Application Nodes" la actividad creada y definimos la propiedad Name con el nombre de la clase que la implementa (en nuestro caso se llama Clase2)

Ahora para acceder a internet modificaremos unos permisos en el archivo AndroidManifest.xml, primero agregaremos un Activity para Clase2. Y después pestaña "Permissions" presionar el botón "Add" y seleccionar "Uses Permissions":Luego fijar en la propiedad name el valor "android.permission.INTERNET"

Con esto nuestra aplicación ya debería funcionar, corremos el emulador, escribimos la pagina y observamos el resultado:




1 comentario: