2015-10-22 3 views
0

Я вижу, что UILabel в IOS имеет свойство высоты вместе с шрифтом. Я также вижу, что если я дам высоту и шрифт одинаковое значение, для некоторых символов текст обрезается в UILabel. Как эти два разных? При выполнении дизайна пользовательского интерфейса, если высота больше, чем размер шрифта, было бы некоторое дополнительное пространство, которое я хочу избежать, и, следовательно, хотел знать, что именно представляет собой различие между ними.UILabel Шрифт и высота в IOS

+0

просто показать код вашего лейбла? – Garry

ответ

0

Размер текста - это высота от базовой линии шрифта до его линии линии, которая не учитывает descenders (например, буквы «g» и «y») или восходящие (например, «f», в некоторых шрифты). В общем, вам не нужно (или даже нужно) устанавливать высоту метки; он определяет лучшую высоту в зависимости от размера шрифта.

См. https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/CustomTextProcessing/CustomTextProcessing.html для получения подробной информации о том, как работают размеры шрифта. enter image description here

1

Вы можете использовать sizeThatFits: для определения правильной высоты для UILabel

UILabel *label; 
label.text = @"Some text"; 
CGRect labelFrame = label.frame; 
labelFrame.size.height = [label sizeThatFits:CGSizeMake(labelFrame.size.width), MAXFLOAT].height; 
label.frame = labelFrame; 
Смежные вопросы