programacion android - Añadir un botón a un layout y añadir código en el evento onClick

Añadir un botón a un layout y añadir código en el evento onClick

Añadir un botón desde Graphical Layout o manualmente desde fichero XML

Explicaremos a continuación cómo añadir un botón (Button) a una apliación Android en Eclipse, en primer lugar ya tendremos creado el Layout de nuestra aplicación (ventana principal). En este layout que podemos abrir desde "res" - "layout", haremos doble click sobre "activity_ajpdsoft_linterna.xml" (puede tener cualquier otro nombre). Eclipse nos mostrará la edición gráfica del layout con los posibles componentes a agregar, en el grupo "Form Widgets" de la ventana "Palette" seleccionaremos "Button":
AjpdSoft_cabca_001
Y lo arrastraremos al lugar del layout donde queramos que aparezca:
AjpdSoft_cabca_002
Seleccionando el nuevo botón, Eclipse nos mostrará en la parte derecha la ventana "Properties" donde indicaremos las dos propiedades más importantes:
  • Id: nombre que identificará el Button para referenciarlo en el código Java, por ejemplo "@+id/btURL" (siempre indicaremos "@+id/nombre_identificativo":
AjpdSoft_cabca_003
  • La otra propiedad importante para el Button será el texto que se mostrará al usuario, tendremos dos posibilidades:
    • Lo podemos escribir directamente en la propiedad "Text" (no es recomendable).
    • Antes de asignarle un texto al Button crearemos un "Value" en "Resources". Para ello seguiremos los siguientes pasos, abriremos las siguientes carpetas en "Project Explorer": "res" - "values", haremos doble click en "strings.xml". En la parte derecha Eclipse nos mostrará los values actuales, pulsaremos "Add":
AjpdSoft_cabca_004
Seleccionaremos "String" y pulsaremos "OK":
AjpdSoft_cabca_005
Introduciremos un nombre identificativo para el nuevo String en "Name", por ejemplo "text_url" y un valor en "Value", por ejemplo "Visitar web". Cerraremos el fichero "strings.xml" y guardaremos los cambios:
AjpdSoft_cabca_006
En realidad lo único que hemos hecho es añadir la siguiente línea al fichero "strings.xml":
<string name="text_url">Visitar web</string>
Una vez añadido el string volveremos al layout, seleccionaremos el Button y en la propiedad "Text" pulsaremos el botón "...":
AjpdSoft_cabca_007
En la ventana de selección de recurso (Resource Chooser) seleccionaremos el string añadido anteriormente "text_url":
AjpdSoft_cabca_008
De esta forma desde "Graphical layout" ya tendremos el botón añadido a la ventana principal de la aplicación Android:
AjpdSoft_cabca_009
Como casi todo en Eclipse, podremos ver y modificar e incluso añadir cualquier componente editando directamente el fichero correspondiente al layout, pulsando en la parte inferior del layout abierto en el fichero xxx.xml, veremos el código XML necesario para añadir cualquier componente de nuestra aplicación, enmarcamos en rojo el código XML que ha añadido el diseñador gráfico de forma automática para nuestro botón:
AjpdSoft_cabca_010
El código XML para añadir un botón en Eclipse para aplicaciones Android:
<Button
android:id="@+id/btURL"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/btAjpdSoft"
android:layout_centerHorizontal="true"
android:layout_marginTop="22dp"
android:text="@string/text_url" />

Asignar código a evento onClick de un botón en Eclipse para aplicaciones Android

Abriremos el fichero xxx.java de nuestra aplicación que estará en el "Project Explorer", en la carpeta "src", en nuestro caso "AjpdSoftLinterna.java". Para trabajar con un Button deberemos tener un import al principio del programa:
import android.widget.Button;
En la clase de la aplicación añadiremos la siguiente línea:
private Button btURL;
(donde "btURL" será el nombre que le hayamos asignado al botón al crearlo en el layout, la propiedad "Id")
AjpdSoft_cabca_011
Por último añadiremos dentro de "public void onCreate..." las siguientes líneas de código Java para crear el evento OnClick, que será el código que se ejecute cuando el usuario pulse en el botón:
        btURL = (Button) findViewById(R.id.btURL);
        btURL.setOnClickListener(new OnClickListener() 
        {

            @Override
            public void onClick(View v) 
            {
             Intent browserIntent = 
              new Intent(Intent.ACTION_VIEW, 
                Uri.parse("http://www.ajpdsoft.com"));
             startActivity(browserIntent);
            }
        });
El código anterior permitirá que cuando el usuario pulse en el botón se abrirá el navegador por defecto y se navegará a la URL indicada. Para que funcione el código anterior hay que añadir dos imports al principio:
import android.net.Uri;
import android.content.Intent;
Ahora probaremos la aplicación en el emulador, para ello pulsaremos en "Run" - "Run":
AjpdSoft_cabca_013
Si todo es correcto se ejecutará la aplicación en el emulador, mostrando nuestro nuevo botón "Visitar web":
AjpdSoft_cabca_014
Si el usuario de nuestra aplicación Android desarrollada con Eclipse pulsa en el botón se abrirá el navegador por defecto de nuestro dispositivo Android y se visitará la URL "www.ajpdsoft.com":
AjpdSoft_cabca_015


http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=603

SHARE
b16-rounded

Oscar perez

Arquitecto especialista en gestion de proyectos si necesitas desarrollar algun proyecto en Bogota contactame en el 3006825874 o visita mi pagina en www.arquitectobogota.tk

  • soc-icon-black-dribbble
  • soc-icon-black-t
  • soc-icon-black-p
  • soc-icon-black-be
  • soc-icon-black-instagram
    Blogger Comment
    Facebook Comment

0 comentarios:

Publicar un comentario