Табличное представление предназначено для отображения данных.Свойства ваших ячеек таблицы должны только записываться, а не считываться.Надлежащий способ справиться с этой ситуацией - обновить базовые объекты модели - объекты, которые вы используете для заполнения табличного представления - при изменении данных, а затем перезагрузить затронутые строки.
Проблема, с которой вы столкнулисьВы увидите, что UITableView
повторно использует ячейки таблицы.Как только ячейка таблицы прокручивается за пределы экрана, вполне вероятно, что табличное представление будет повторно использовать эту же ячейку для отображения другой строки.
Это означает, что принципиально невозможно перебирать ячейки таблицы.Когда вам нужно обновить строку, потому что ее данные изменились, вы должны вызвать reloadRowsAtIndexPaths:withRowAnimation:
(или reloadData
, если все строки изменились), и если строка видна на экране, UITableView
вызоветваши методы источника данных и дают вам возможность настроить ячейку для отображения.