Пользовательская ячейка с проблемами памяти кнопок - PullRequest
1 голос
/ 22 сентября 2011

У меня есть пользовательская ячейка, которая содержит кнопку в табличном представлении.Кнопка используется в качестве переключателя, по сути, служит «флажком» для пользователя, чтобы отмечать определенные элементы в списке.У меня возникла проблема, из-за которой кнопки в этих ячейках таблицы, по-видимому, совместно использовали области памяти в результате dequeuereusablecellwithidentifier.Когда кнопка была нажата, она также будет нажимать каждую 4-ю или 5-ю кнопку в списке.

Я изменил его, чтобы создать свои ячейки в методе в массиве, который затем заполняет представление таблицы.Это прекрасно работает для того, чего я пытаюсь достичь, однако это создает проблему при работе с большим количеством строк.Сам просмотр таблицы выполняется быстро, но начальная загрузка может составлять 3-4 секунды, когда число строк превышает 100.Итерация для создания ячеек и последующего заполнения их табличным представлением довольно громоздка.

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

Любая помощь будет принята с благодарностью!

Спасибо:)

1 Ответ

1 голос
/ 22 сентября 2011

Вы определенно не хотите менять способ создания ячеек. Dequeuereusablecellwithidentifier - очень хорошая вещь по причинам, которые вы видите.

Решение состоит в том, что вы должны хранить результат кнопки /Нажмите флажок в отдельной структуре данных, как NSArray, полный NSNumber.Поскольку ваши таблицы прокручиваются и ячейки используются повторно, вы устанавливаете флажок в любое состояние, в котором он должен быть основан на вашем NSArray.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...