IDIOMAS

Google-Translate-Chinese Google-Translate-Spanish to French Google-Translate-Spanish to German Google-Translate-Spanish to Japanese Google-Translate-Spanish to English Google-Translate-Spanish to Russian Google-Translate-Spanish to Portuguese Google-Translate-Spanish to Italian

sábado, 23 de enero de 2016

Como crear un ALERTDIALOG en Android Studio. Ejemplo con ITEMS clickables.

Hola, en esta entrada de blog de Trucos nos fijaremos en un ejemplo práctico de creación de un ALERTDIALOG. Son pequeñas pantallas auxiliare que nos aparecen para informarnos en distinpos procesos de una aplicación como por ejemplo si estas de acuerdo en continuar adelante con una opción, grabar datos recurrentes, aceptar o no una política de cookies, etc...

Una cosa muy útil que tienen los ALERTDIALOG son su facilidad de programación y la posibilidad de añadirle eventos en sus ITEMS.

Vamos a ver el ejemplo para tenerlo más claro.


- creamos un BUTTON en nuestro LAYOUT para llamar el ALERTDIALOG:




- Vamos a programar un evento onclick en JAVA al nuevo BUTTON y que llame al método que lo hemos llamado mostrar_alertdialog() :


public class MainActivity extends AppCompatActivity {

  
    Button button;

    @Override    
        protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override            
                public void onClick(View v) {

                mostrar_alertdialog();
            }
        });
    }




- Ahora vomos a programar el método:


 final CharSequence[] items = { "A", "B", "C", "D" };

    AlertDialog.Builder builder = new AlertDialog
                                  .Builder(MainActivity.this);
    builder.setTitle("VOCALES");
    builder.setItems(items, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int item) {

           
            dialog.dismiss();

        }
    }).show();
} //este método no tiene eventos en sus items




- Si lo que queremos es programar eventos en sus ITEMS, tenemos que utilizar un SWITCH y en cada CASE programar qué queremos hacer dentro del ONCLICK del ALERTDIALOG:


public void onClick(DialogInterface dialog, int item) {

    switch (item){

        case 0:
            // hacer algo
        case 1:
            // hacer algo
        case 2:
            // hacer algo
        case 3:
            // hacer algo            
}



Saludos a todo@s