gpt4 book ai didi

ios - 计算动态 UILabel 的行数 (iOS7)

转载 作者:可可西里 更新时间:2023-11-01 03:01:15 29 4
gpt4 key购买 nike

这个问题有很多解决方案,但找不到未弃用的解决方案。

我有一个 UILabel,其模式为 WordWrap,宽度固定为 250。行设置为 0。

这是我尝试过的:

UILabel *contentLabel = (UILabel*)[contentView viewWithTag:10];
CGSize size = [contentLabel.text sizeWithFont:contentLabel.font forWidth:contentLabel.frame.size.width lineBreakMode:NSLineBreakByWordWrapping];
NSLog(@"Label's height is: %d", size.height);

height 参数的输出总是 20(所以它就像一行),而 te text 就像 30 行一样长。

出于 UIScrollView 的目的,我需要它。

最佳答案

使用文档中建议的方法:

- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(NSDictionary *)attributes context:(NSStringDrawingContext *)context NS_AVAILABLE_IOS(7_0);

例如

    CGSize maxSize = CGSizeMake(self.label.frame.size.width, MAXFLOAT);

CGRect labelRect = [self.label.text boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:self.label.font} context:nil];

NSLog(@"size %@", NSStringFromCGSize(labelRect.size));

关于ios - 计算动态 UILabel 的行数 (iOS7),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18784183/

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