gpt4 book ai didi

iphone - iPad/iPhone - 设置适合给定矩形的标签尺寸

转载 作者:行者123 更新时间:2023-12-03 21:08:38 25 4
gpt4 key购买 nike

在我的 iPad 应用程序中,我有一个占据整个 View 的标签。我想动态计算适合整个矩形的标签的大小。但我想保持自动换行。在我的 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);
}

alt text

最佳答案

所以你试图让文本自动换行,但使用最大可能的大小?在这种情况下,请执行以下操作:

//With the line break mode set to wordwrap and number of lines set to 1.
[label adjustsFontSizeToFitWidth:YES];
//set max font
label.font = [UIFont fontWithName:fontName 300];
[label setMinimumFontSize:5];

这应该就是您需要做的全部事情。

关于iphone - iPad/iPhone - 设置适合给定矩形的标签尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4767778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com