В моем приложении для iPad у меня есть ярлык, который занимает весь вид. Я хочу динамически рассчитать размер метки, которая вписывается во весь прямоугольник. Но я хочу сохранить перенос слов.
В моем XIB я добавил метку и установил ее в режим переноса слов.
См. Изображение прилагается. Я хочу показать ярлык с переносом слов. Может ли кто-нибудь помочь мне найти проблему?
Ниже приведен код, который я использую:
(В одном из ответов на этих форумах я нашел следующий код:)
-(void)sizeLabel:(UILabel*)label toRect:(CGRect)labelRect withFont:(NSString*)fontName {
// Set the frame of the label to the targeted rectangle
label.frame = labelRect;
// Try all font sizes from largest to smallest font size
int fontSize = 300;
int minFontSize = 5;
// Fit label width wize
CGSize constraintSize = CGSizeMake(label.frame.size.width, MAXFLOAT);
do {
// Set current font size
label.font = [UIFont fontWithName:fontName size:fontSize];
// Find label size for current font size
CGSize labelSize = [[label text] sizeWithFont:label.font
constrainedToSize:constraintSize
lineBreakMode:UILineBreakModeWordWrap];
// Done, if created label is within target size
if( labelSize.height <= label.frame.size.height )
break;
// Decrease the font size and try again
fontSize -= 2;
} while (fontSize > minFontSize);
}