lundi 4 mai 2015

Set checkboxes status in AlertDialog builder (Android)

Following is my code for my alertdialog builder

    final String[] values = new String[] {"Select All", "Android", "ios", "windows", "Blackberry"};
    final ArrayList<String> selecteditems = new ArrayList<String>();
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Select your favorite OS");
      builder.setMultiChoiceItems(values, null , new DialogInterface.OnMultiChoiceClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which, boolean isChecked) {

            if (isChecked) {
                selecteditems.add(String.valueOf(which));

            } else {

                selecteditems.remove(Integer.valueOf(which));
            }
        }
    })
    .setPositiveButton("OK", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();

        }
    })
    .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
           dialog.dismiss();

        }
    });

    AlertDialog dialog = builder.create();
    dialog.show();

What I want to do is to be able to detect when 'Select All' is checked, which I can from the 'ischecked' loop. But I want to be able to set all the options to checked when the user checks 'Select All' and remove the checks when user unchecks 'Select All'. How can I do that?




Aucun commentaire:

Enregistrer un commentaire