Программное изменение(инициализация) элемента ListView (Android)

Имеется ListView, содержащий массив имен, подгружаемый из XML файла. Единица ListView это элемент CheckedTextView.

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

Вопрос – как произвести инициализацию всего списка значениями включен/выключен(чекбокс установлен/снят)?

Мои попытки инициализировать значения:

for(int i = 0; i <= choiceModeList.getLastVisiblePosition() -                      choiceModeList.getFirstVisiblePosition(); i++) {      CheckedTextView chkd =       choiceModeList.getChildAt(i).findViewById(android.R.id.text1);      chkd.setChecked(data[i]); } 

В этом случае чекбоксы устанавливаются, но только для актуального вида (в случае прокрутки – значения пропадают).

Тогда я попробовал создать свой ArrayAdapter и переопределить метод getView

    //data - массив содержащий актуальное состояние чекбоксов для каждого элемента списка      public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {     CheckedTextView checkbox;     View tempView = convertView;      if(tempView == null) {         LayoutInflater inflater = context.getLayoutInflater();         tempView = inflater.inflate(android.R.layout.simple_list_item_multiple_choice, null, true);         checkbox = tempView.findViewById(android.R.id.text1);         CharSequence[] chars = names;         checkbox.setText(chars[position]);         tempView.setTag(checkbox);      } else {         checkbox = (CheckedTextView) tempView.getTag();     }      if(data != null) {         if (data[position] == 1) {             checkbox.setChecked(true);         } else {             checkbox.setChecked(false);         }     }     return tempView; } 

Мне кажется, что я упускаю что-то очевидное и важное. Возможно, я как-то не так гуглю этот вопрос. Если у вас есть совет, или ссылка на материал/статью на русском/английском языке, то я с огромной благодарностью приму вашу помощь! Заранее вам спасибо!