Сохранить изображение ячейки после прокрутки UITableView - PullRequest
1 голос
/ 13 сентября 2010

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

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

Спасибо

Ответы [ 2 ]

1 голос
/ 13 сентября 2010

Звучит так, будто вы используете UITableViewCell s для хранения состояния данных вашей таблицы.Это неправильный подход, потому что клетки используются повторно.Вы должны хранить состояние в отдельном «хранилище данных».Это может быть просто массив, который вы храните в памяти в своем подклассе UITableViewController, или что-то постоянное, например SQLite или Core Data.Это состояние затем передается обратно в ячейку, когда табличное представление запрашивает вас в tableView:cellForRowAtIndexPath:.

0 голосов
/ 13 сентября 2010

У меня была такая же проблема.Использование:

MyTableViewCell* cell = [tableView dequeCellWithReuseIdentifier:@"MyTableViewCell"];
if (cell == nil) { /* create cell */ }
/* and now you reset the properties of that cell */
cell.text = [myCellText objectAtIndex:indexPath.row];

Здесь ключ сбрасывает свойства ячейки таблицы в без очереди на основе indexPath .Это означает, что вам нужно будет поддерживать достаточно состояния, чтобы воссоздать любую ячейку таблицы - , включая изображения, которые вы используете .

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