Ich verwende derzeit den AlertDialog.builder, um eine Multichoice-Liste für den Benutzer (Kontrollkästchen) zu erstellen. Das funktioniert großartig, außer dass wir eine der Schaltflächen deaktivieren möchten, um alle anderen in der Liste abzuwählen.AlertDialog MultiChoiceItems Listener Probleme
builder.setMultiChoiceItems(list, checked,
new DialogInterface.OnMultiChoiceClickListener() {
public void onClick(DialogInterface dialog,
int item, boolean isChecked) {
if(item == ANY_ITEM_BUT_0)
{
((AlertDialog) dialog).getListView().setItemChecked(0, false);
}
}
});
Bei der Verwendung von „true“ wird es erfolgreich das Kontrollkästchen, aber wenn falsch verwendet es nicht deaktivieren Sie es nicht (es sei denn, ich manuell auf true, bevor die Hand gesetzt haben.) Gibt es einen separaten Hörer ich verwenden sollte zu erkennen, wenn ein Benutzer auf diese klickt? Es scheint mir, dass zwei Häkchen gesetzt sind, eins nach "setItemChecked (0, true);" und eins nach der Auswahl.
Das hat mich seit ein paar Tagen verrückt, jede Hilfe würde sehr geschätzt werden.
Sie haben mich eine Menge Zeit gerettet :) Danke! Ich habe alle Elemente mit false gesetzt, aber es scheint, dass null alles ist, was ich brauche! – tereru