Какао - iOS - Для обновления свойства text UILabel требуется setNeedsDisplay?
Я новичок, и у меня есть проект iOS, где я устанавливаю свойство text поля UILabel.
self.nameLabel.text = @"abcd";
Вопрос
- Нужно ли вызывать setNeedsDisplayInRect для метки для отображения нового текстового значения?
Мое понимание основано на некотором тестировании:
- Без вызова setNeedsDisplayInRect текст метки был обновлен,
- но я хочу знать, было ли это совпадением или гарантируется, что метка будет отображать новое значение без явного вызова setNeedsDisplay
Спасибо
2 ответа
Решение
UILabel
будет делать все необходимое для обновления, когда вы установите его text
имущество. То же самое для других его свойств (font
, textColor
и т. д.) Единственное, что вам нужно сделать вручную (если вы не используете IB), это установить frame
,
Если метка не обновляется, несмотря на текстовое обновление, ваш ЦП может быть полностью загружен, и следующая команда принудительно обновит:
self.nameLabel.text = @"abcd";
[[NSRunLoop mainRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.01]];