2012-04-11 7 views
7

Tengo un cuadro de diálogo de alertas que tiene una lista y quiero cerrar el clic en la lista ¿es posible?¿Puedo cerrar un cuadro de diálogo de alerta en la lista?

AlertDialog.Builder builder = new AlertDialog.Builder(this); 

    final String[] Categories = SQLiteHelper.getAllCategories();//this is where i get the array for my list 
    ListView myList = new ListView(this); 

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.alert_dialog_list_view, Categories); 
    myList.setAdapter(adapter); 
    myList.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, int position, long rowId) { 
        //doing something in here and then close 
     } 
    }); 
    builder.setTitle("Please Choose"); 
    builder.setInverseBackgroundForced(true); 
    builder.setView(myList); 
    final Dialog dialog = builder.create(); 
    dialog.show(); 
    } 

El diálogo de alerta funciona perfectamente, simplemente no quiero poner ningún botón en él.

Respuesta

12

Si define el onItemClickListener después de la Dialog que sólo puede llamar dialog.dismiss(); en el método onItemClick().

+0

gracias funcionó! –

2

de verificación a continuación código

myList.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, int position, long rowId) { 

       //doing something in here and then close 
       dialog.dismiss(); 
     } 
    }); 
+1

solo necesitaba poner esto después de Diálogo final dialog = builder.create(); –

+0

es su lista haga clic en eventos –

Cuestiones relacionadas