Снять все динамически созданные флажки в Android в макете

У меня есть такой метод:

public void initialiseCheckBox(){

    ArrayList<String> list = new ArrayList<String>();
    list.add("Banners");
    list.add("Poster");
    list.add("Stickers");

    for(int i = 0; i < list.size(); i++) {

        checkBox = new CheckBox(getActivity());
        checkBox.setId(i);
        checkBox.setText(list.get(i));

        FlowLayout.LayoutParams params = new FlowLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        params.rightMargin = 32;
        params.topMargin = 5;

        checkBox.setOnClickListener(getOnClickDoSomething(checkBox));
        linearMain.addView(checkBox, params);
    }

}

Я могу получить все выбранные CheckBox через getOnClickDoSomething(checkBox) теперь, как я могу снять все отмеченные CheckBox в другом методе я использую фрагмент. Спасибо

1 ответ

Попробуй это:

Сначала заполните ArrayList флажков:

ArrayList<CheckBox> arrayOfCheckBox = new ArrayList<>();
      for(int i = 0; i < list.size(); i++) {

        checkBox = new CheckBox(getActivity());
        checkBox.setId(i);
        checkBox.setText(list.get(i));

        FlowLayout.LayoutParams params = new FlowLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        params.rightMargin = 32;
        params.topMargin = 5;

        checkBox.setOnClickListener(getOnClickDoSomething(checkBox));
        arrayOfCheckBox.add(checkBox);
        linearMain.addView(checkBox, params);
    }

Затем снимите флажки с массива:

for (int i = 0; i < myCheckBoxes.size(); i++) {
        myCheckBoxes.get(i).setChecked(false);
    }

Подскажите пожалуйста, если решите вашу проблему.(Решено)

Другие вопросы по тегам