Выбрать все элементы ListView (настраиваемая строка с флажком в ней)

Что у меня есть: У меня есть ListView с настраиваемыми строками, с CheckBox и двумя TextView в каждой строке. У меня есть кнопка «Выбрать все».

Чего я хочу: Я хочу, чтобы, когда я нажимаю кнопку, все флажки в ListView проверяются / снимаются.

В чем проблема: В OnClick кнопки «Выбрать все». Я делаю это:

public void OnClickSelectAllButton(View view)
{
    ListView l = getListView();
    int count = l.getCount();
    for(int i=0; i<count; ++i) 
    {
       ViewGroup row = (ViewGroup)l.getChildAt(i);
       CheckBox check = (CheckBox) row.findViewById(R.id.checkBoxID);
       check.setChecked(true); // true for select all and false for unselect all etc..
    }
}

Здесь l.getChildAt (i) дает мне только видимые элементы. И когда индекс выходит за пределы видимых элементов, возникает проблема. Я хочу проверить все флажки в списке, а не только видимые.

14
задан Khawar 9 February 2011 в 07:59
поделиться