Как я могу установить элементы списка флажков, как проверено DEFAULT в AlertDialog? - PullRequest
0 голосов
/ 22 сентября 2018

Мне нужно показать список элементов списка флажков как ПРОВЕРЕННЫЙ в ALERTDIALOG по умолчанию (когда всплывающее окно с предупреждением) в Android.

Это мой код,

 final String[] items = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
    final List<String> itemlist = Arrays.asList(items);


    AlertDialog dialog = new AlertDialog.Builder(this)
            .setTitle("Working days")
            .setMultiChoiceItems(items, seletedvaluesbool, new DialogInterface.OnMultiChoiceClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int indexSelected, boolean isChecked) {

                    if (isChecked) {
                        // If the user checked the item, add it to the selected items
                    seletedvaluesbool[indexSelected] = isChecked;

                    } else if (seletedItems.contains(indexSelected)) {
                        // Else, if the item is already in the array, remove it
                    seletedItems.remove(Integer.valueOf(indexSelected));
                    seletedvaluesbool[indexSelected] = isChecked;
                    }
                }
            }).setPositiveButton("OK", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int id) {

                }
            }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int id) {
                    //  Your code when user clicked on Cancel
                }
            }).create();
    dialog.show();

    }

Когда появится диалоговое окно, мне нужно показать несколько пунктов, отмеченных по умолчанию.Я попробовал приведенный ниже код для этого, но он не работает.

    ListView lv = ((AlertDialog) dialog).getListView();
    dialog.getListView().setSelection(0); //To set the 0th position as checked

Любая помощь будет отличной.Заранее спасибо.

1 Ответ

0 голосов
/ 22 сентября 2018

Вместо:

dialog.getListView().setSelection(0);

Вы должны использовать это:

dialog.getListView().setItemChecked(0, true);
...