0% encontró este documento útil (0 votos)
19 vistas15 páginas

Crear AlertDialog en Android Studio

El documento describe cómo crear diferentes tipos de diálogos y notificaciones en Android, incluyendo AlertDialogs, Toasts y diálogos personalizados. Explica cómo crear un AlertDialog simple con un título, mensaje y botón, y cómo agregar múltiples botones y controladores de eventos de clic. También explica cómo usar la clase Toast para mostrar notificaciones temporales y cómo crear Toasts personalizados con layouts XML.

Cargado por

oscarin696
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
19 vistas15 páginas

Crear AlertDialog en Android Studio

El documento describe cómo crear diferentes tipos de diálogos y notificaciones en Android, incluyendo AlertDialogs, Toasts y diálogos personalizados. Explica cómo crear un AlertDialog simple con un título, mensaje y botón, y cómo agregar múltiples botones y controladores de eventos de clic. También explica cómo usar la clase Toast para mostrar notificaciones temporales y cómo crear Toasts personalizados con layouts XML.

Cargado por

oscarin696
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

AlertDialog simple

Ya se encuentra disponible el nuevo tutorial para aprender android con el nuevo entorno
Android Studio propuesto por Google y que remplaza a Eclipse.

El diálogo más simple que podemos crear con Android en una ventana con un título, un
mensaje y un botón para cerrarlo.

Muy útil si tenemos que informar al usuario y no queremos que la ventana desaparezca
hasta que el usuario presione un botón para ocultar el diálogo.

Problema:

Confeccionar una aplicación que muestre un diálogo cada vez que se inicie la aplicación
informando que el programa que está ejecutando es un programa de prueba y no el
completo.

Primero creamos un proyecto llamado: proyecto031


Lo almacenamos en el paquete: androidya.proyecto031

El código fuente de la aplicación queda como sigue:

package androidya.proyecto021;

import [Link];
import [Link];
import [Link];

public class Proyecto031Activity extends Activity {


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link]);

[Link] builder = new [Link](this);


[Link]("Importante");
[Link]("Este es un programa solo de prueba y no la
versión completa");
[Link]("OK",null);
[Link]();
[Link]();
}
}

Como queremos que el diálogo aparezca inmediatamente se arranque la aplicación


procedemos a incorporar el código en el método onCreate.
Primero debemos importar la clase AlertDialog:
import [Link];

La clase AlertDialog contiene otra clase llamada Builder que es la que encapsula la
creación de objetos de la clase AlertDialog. Procedemos a definir y crear un objeto de la
clase Builder contenida en la clase AlertDialog:

[Link] builder = new [Link](this);

Una vez creado el objeto procedemos a llamar al método que define el título a mostrar en el
diálogo:

[Link]("Importante");

El mensaje propiamente dicho lo configuramos llamando al método setMessage:

[Link]("Este es un programa solo de prueba y no la


versión completa");

Mostramos un botón para poder cerrar el diálogo:

[Link]("OK",null);

Finalmente llamamos al método que crea el diálogo y el que lo visualiza:

[Link]();
[Link]();

La interfaz visual del diálogo en tiempo de ejecución es:


AlertDialog con botones de confirmar y
cancelar
Ya se encuentra disponible el nuevo tutorial para aprender android con el nuevo entorno
Android Studio propuesto por Google y que remplaza a Eclipse.

Problema:

Confeccionar una aplicación que muestre un diálogo cada vez que se inicie la aplicación
informando: "¿Acepta la ejecución de este programa en modo prueba?" y dos botones para
confirmar o rechazar. En caso que se rechace finalizar la ejecución del programa.

Primero creamos un proyecto llamado: proyecto032


Lo almacenamos en el paquete: androidya.proyecto032

El código fuente de la aplicación queda como sigue:

package androidya.proyecto032;

import [Link];
import [Link];
import [Link];
import [Link];
import [Link];

public class Proyecto032Activity extends Activity {


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link]);

[Link] dialogo1 = new [Link](this);


[Link]("Importante");
[Link]("¿ Acepta la ejecución de este programa en
modo prueba ?");
[Link](false);
[Link]("Confirmar", new
[Link]() {
public void onClick(DialogInterface dialogo1, int id) {
aceptar();
}
});
[Link]("Cancelar", new
[Link]() {
public void onClick(DialogInterface dialogo1, int id) {
cancelar();
}
});
[Link]();
}

public void aceptar() {


Toast t=[Link](this,"Bienvenido a probar el programa.",
Toast.LENGTH_SHORT);
[Link]();
}

public void cancelar() {


finish();
}
}

Creamos un objeto de la clase AlertDialog a través de la clase Builder:

[Link] dialogo1 = new [Link](this);

Configuramos el título del diálogo:

[Link]("Importante");

Configuramos el mensaje del diálogo:

[Link]("¿ Acepta la ejecución de este programa en


modo prueba ?");
Evitamos que el diálogo sea salteado por cualquier medio distinto a presionar alguno de los
dos botones:

[Link](false);

Llamamos al método setPositiveButton indicando el texto a mostrar en el botón y la clase


anónima que capturará el evento clic del botón:

[Link]("Confirmar", new
[Link]() {
public void onClick(DialogInterface dialogo1, int id) {
aceptar();
}
});

De forma similar procedemos con el botón de cancelar:

[Link]("Cancelar", new
[Link]() {
public void onClick(DialogInterface dialogo1, int id) {
cancelar();
}
});

Mostramos el diálogo:

[Link]();

Definimos los métodos del Activity que se llamaran desde las clases anónimas:

public void aceptar() {


Toast t=[Link](this,"Bienvenido a probar el programa.",
Toast.LENGTH_SHORT);
[Link]();
}

public void cancelar() {


finish();
}

La interfaz del diálogo es similar a esta:


Notificaciones o mensajes mediante la
clase Toast
Ya se encuentra disponible el nuevo tutorial para aprender android con el nuevo entorno
Android Studio propuesto por Google y que remplaza a Eclipse.

La clase Toast nos permite mostrar un mensaje superpuesto a la ventana por un período de
tiempo pero sin congelar la aplicación. Este mensaje no permite interactuar con el usuario
(no se pueden ingresar datos, seleccionar botones ni obligar a que se cierre)

Eventualmente se lo puede localizar en distintas partes del dispositivo.

Problema:

Confeccionar una aplicación que muestre una serie de botones y active mensajes de
notificaciones con la clase Toast.

Primero creamos un proyecto llamado: proyecto033


Lo almacenamos en el paquete: androidya.proyecto033

La interfaz visual a implementar son tres botones:


No olvidemos inicializar la propiedad On Click de cada botón con los métodos: prueba1,
prueba2 y prueba3.

El código fuente de la aplicación queda como sigue:

package androidya.proyecto033;

import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];

public class Proyecto033Activity extends Activity {


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link]);
}

public void prueba1(View v) {


Toast toast = [Link](this, "Mensaje 1",
Toast.LENGTH_SHORT);
[Link]();
}

public void prueba2(View v) {


Toast toast = [Link](this, "Mensaje 2",
Toast.LENGTH_SHORT);
[Link](Gravity.CENTER_VERTICAL, 0, 0);
[Link]();
}

public void prueba3(View v) {


LayoutInflater inflater = getLayoutInflater();
View layout = [Link]([Link].toast1, null);
Toast toast = new Toast(getApplicationContext());
[Link](Gravity.CENTER_VERTICAL, 0, 0);
[Link](Toast.LENGTH_LONG);
[Link](layout);
[Link]();
}
}

Para el evento click del primer botón mostramos el mensaje con las estructura más simple
que nos provee la clase Toast. Definimos un objeto de la clase Toast y llamamos al método
makeText pasando como parámetro la referencia del Activity, el mensaje a mostrar y una
constante indicando si queremos que el mensaje aparezca por un período corto o largo de
tiempo en la pantalla. Por último llamamos al método show para que se muestre el mensaje:

public void prueba1(View v) {


Toast toast = [Link](this, "Mensaje 1",
Toast.LENGTH_SHORT);
[Link]();
}
Si queremos ubicar en otra parte de la pantalla debemos llamar al método setGravity e
indicar en el primer parámetro una constante (en este ejemplo lo centramos verticalmente)
En el segundo y tercer parámetro de setGravity podemos desplazarlo una cantidad de
píxeles hacia derecha o izquierda, arriba o abajo según indiquemos valores positivos o
negativos.
Luego el método completo para este segundo Toast es:

public void prueba2(View v) {


Toast toast = [Link](this, "Mensaje 2",
Toast.LENGTH_SHORT);
[Link](Gravity.CENTER_VERTICAL, 0, 0);
[Link]();
}
Para generar un Toast customizado debemos crear un archivo XML donde creamos
visualmente los controles a mostrar, en este ejemplo creamos el siguiente archivo (crear un
archivo llamado [Link]):
Este recurso luego lo incorporamos en el Toast mediante el siguiente código:

public void prueba3(View v) {


LayoutInflater inflater = getLayoutInflater();
View layout = [Link]([Link].toast1,null);
Toast toast = new Toast(getApplicationContext());
[Link](Gravity.CENTER_VERTICAL, 0, 0);
[Link](Toast.LENGTH_LONG);
[Link](layout);
[Link]();
}

Mediante la clase LayoutInflate procedemos a leer el contenido del archivo XML creado
anteriormente y lo enlazamos con el toast mediante el método:

[Link](layout);

En pantalla luego el Toast customizado aparece de la siguiente forma:

También podría gustarte