Siguiendo con los buenos tutoriales de Android, veamos cómo mostrar una alerta que tenga una lista de opciones como la siguiente:
Esas opciones son creadas a partir del contenido de un arreglo.
Veremos cómo crear la alerta, definir las opciones, escuchar el click de cada opción y saber cuál de ellas fue seleccionada; todo esto usando AlertDialog.Builder.
Se necesita importar a DialogInterface (para escuchar los clicks) y a AlertDialog para crear el diálogo. Así que al inicio del archivo coloca lo siguiente:
import android.app.AlertDialog;
import android.content.DialogInterface;
Si quieres mostrar la selección en un Toast, también importa la clase, pero recuerda que esto no es necesario para la alerta:
import android.widget.Toast;
Es una buena práctica definir las opciones como un arreglo, y declarar al mismo como final. Por lo tanto, dentro de tu clase define las opciones:
// Recuerda que esto va dentro de la clase, pero no dentro de un método
final private CharSequence[] OPCIONES_ALERTA = {"Editar", "Eliminar"}; // Aquí más opciones...
Agrega las necesarias. Como ves, es un arreglo de CharSequence. Más abajo vamos a usarlo.
Cuando ya hemos definido nuestras opciones creamos la alerta con AlertDialog.Builder.
Para establecer su contenido, llamamos a setItems
, pasándole el arreglo que definimos anteriormente y una interfaz en donde sobrescribimos el método onClick
.
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Opciones");
builder.setItems(OPCIONES_ALERTA, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// which representa el índice del arreglo de opciones
String eleccion = OPCIONES_ALERTA[which].toString();
// Aquí puedes mostrar la elección o hacer lo que sea con ella.
Toast.makeText(getActivity(), "Elegiste: " + eleccion, Toast.LENGTH_SHORT).show();
// En el click se descarta el diálogo
dialog.dismiss();
}
});
Con eso hemos creado la alerta. En el método onClick
se recibe un elemento llamado which
, que indica el índice del elemento que fue seleccionado.
Nota: si estás dentro de una actividad, usa NombreDeTuClase.this
en lugar de getActivity
También se recibe el diálogo en sí, y llamamos a dismiss
para descartarlo.
Lo de arriba crea la alerta, pero para mostrarla debes llamar al método show. Así que cuando quieras mostrarla llama al método:
builder.show();
Con eso se podrá mostrar una alerta como la que se muestra al inicio del post. Es común mostrar la alerta justo después de haberla creada.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.