Я прочитал этот ответ, как отрегулировать высоту моей этикетки на основе текста метки: Vertically align text to top within a UILabelКак настроить UILabel
Это мой код пытается установить новый текст и настроить ярлык в том же время.
Но я знаю, что высота этикетки никогда не меняется. Он сохраняет значение, установленное в моем файле xib. Я использую инструмент, Спарк, чтобы проверить высоту метки:
-(void) setNewText(NSString *)newText
{
self.myLabel.text = newText;
self.myLabel.numberOfLines = 0;
[self.myLabel sizeToFit];
[self setNeedsLayout];
}
Можете ли вы сказать мне, что случилось с моим кодом?
спасибо.
Обновлено:
Я попытался @rdelmar предложение. Установите ограничение ширины для метки и число строк до 0. Высота метки ui настраивается. Но есть дополнительные интервалы до и после первой/последней строки текста.
Вот скриншот, который я снял с помощью Spark. Синим прямоугольником является UILabel. Как вы можете видеть, есть дополнительные интервалы до/после первой/последней строки. Как удалить эти интервалы?
Вы используете AutoLayout в своем xib? Если это так, вам нужно настроить константу на ограничение макета. –