проблемы с макетом текста метки при изменении шрифта для приложения с использованием автоматического макета

Я работаю над автоматической компоновкой в ​​своем приложении. У меня есть функция увеличения размера шрифта всего приложения за счет перемещения ползунка. Проблема в том, что когда я увеличиваю размер шрифта, текст метки превращается в эллипсы.

Я задал ограничениям для моей метки фиксированную ширину и увеличивающуюся переменную высоту, но это не решает никаких проблем.

Нужно ли мне указывать режим разрыва строки (перенос слов) и указывать количество строк для каждого текста или есть какое-либо другое решение для этого?

Любая помощь будет оценена.


person Vikas Ojha    schedule 03.09.2014    source источник


Ответы (2)


Попробуй это:

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

затем используйте следующий код для динамического увеличения высоты метки:

-(float)expectedHeightWithFontSize:(CGFloat)fontSize
{
CGRect lblTextSize = [self.yourLabel.text boundingRectWithSize:CGSizeMake(self.yourLabel.frame.size.width, MAXFLOAT)
                   options:NSStringDrawingUsesLineFragmentOrigin
                attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:fontSize]}
                   context:nil];
return lblTextSize.size.height;
}
person Pritesh    schedule 12.08.2015

Вы должны иметь возможность установить перенос слов и указать большое количество строк, скажем, 30. это должно помочь.

person john34543    schedule 25.11.2014