Я использую UIButton, чтобы показать и переключить элемент ячейки таблицы из прочитанного в непрочитанное.
Я использовал синее изображение в качестве фона, чтобы показать, когда элемент не был прочитан, и это сработало, но я подумал, что было бы лучше использовать функцию setHighlighted, поскольку это экономит добавление дополнительного изображения в приложение. Код, который я использую, выглядит следующим образом:
- (void)updateReadButton{
if(article.read.boolValue){
//[readButton setBackgroundImage:nil forState:UIControlStateNormal];
[readButton setHighlighted:FALSE];
[readButton setNeedsLayout];
} else {
[readButton setHighlighted:TRUE];
[readButton setNeedsLayout];
}
}
Это прекрасно работает для первоначального создания ячейки. Но когда по элементу щелкают и отображается подробный вид, я переключаю значение 'read' на 'true' и меняю значение параметра setHighlighted на false для UIButton в ячейке, но оно не изменяется при возврате из детали Посмотреть. Изменение отражается только тогда, когда ячейка прокручивается за пределы экрана и создается заново. Как заставить перерисовать кнопку после перехода к подробному виду?