Menú de selección : Alert Dialog

Este es un pequeño ejemplo, con el que se consigue mostrar varios elementos en forma de lista en un ‘Alert Dialog’, con una única opción de selección.

Podeis descargar el proyecto entero aqui : https://www.dropbox.com/s/e70m1eouez0ul31/ListaAlertDialog.zip

Codigo para mostrar el Dialog

private void MostrarDialogo(){
  
  //Creamos un nuevo AlertDialog.Builder pasandole como parametro el contexto
  AlertDialog.Builder ADBuilder = new AlertDialog.Builder(ListaAlertMain.this);
  
  ADBuilder.setIcon(R.drawable.ic_launcher);//Definimos el icono
  ADBuilder.setTitle("Opciones ");//Asignamos un titulo al mensaje
         
        //Creamos un nuevo ArrayAdapter de 'Strings' y pasamos como parametros (Contexto, int id "Referencia a layout");
        final ArrayAdapter arrayAdapter = new ArrayAdapter(ListaAlertMain.this,android.R.layout.select_dialog_singlechoice);
        
        //Añadimos los elementos a mostrar
        arrayAdapter.add("Copiar");
        arrayAdapter.add("Cortar");
        arrayAdapter.add("Pegar");
        
        //Creamos un boton para cancelar el dialog
        ADBuilder.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {
         @Override
         public void onClick(DialogInterface dialog, int which) {
             dialog.dismiss();//Cerramos el dialogo
         }
     });

    //Capturamos el evento 'OnClick' de los elementos en el dialogo
        ADBuilder.setAdapter(arrayAdapter, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int _item) {
             
             //Creamos un toast para mostrar el elemento selecionado
             Toast.makeText(getApplicationContext(), arrayAdapter.getItem(_item).toString(), Toast.LENGTH_SHORT).show();
            }
        });

        ADBuilder.show();//Mostramos el dialogo
 }

 

screen1 screen2

Mario Camí

Desarrollador de aplicaciones Android. Amante de todo lo Open Source, de los videojuegos y nuevas tecnologías. En mi tiempo libre comparto todo lo aprendido y lo que aprendo en el desarrollo de Android a modo de artículo en el blog. La información nos hará libres!

También te podría gustar...