1

我找到了这个解决方案如何将UILabel高度与其内容相匹配。例如,如果我遵循建议的说明并修改垂直ContentHuggingPriority和垂直ContentCompressionResistancePriority ,它就可以完美运行。所以故事板会自动将 UILabel 高度调整为文本高度。如果我对水平ContentHuggingPriorityContentCompressionResistancePriority和编辑UILabel宽度约束优先级进行相同的设置,则使宽度UILabel适合文本宽度。

我的问题是如何设置参数以适应文本高度和文本宽度的大小?因为似乎我们只能适应 UILabel 内容的高度或宽度。

4

1 回答 1

0
+(CGSize)findTextHeight:(float)height width:(float)width string:(NSString *)desc font:(UIFont*)font{
    if ([desc isKindOfClass:[NSNull class]]) {
        return 0.0;
    }
    CGRect textRect =[desc boundingRectWithSize:CGSizeMake(width, height)
                                        options:NSStringDrawingUsesLineFragmentOrigin
                                     attributes:@{NSFontAttributeName:font}
                                        context:nil];
    CGSize size = textRect.size;
    return size;
}

这将为您提供给定文本的标签大小以及最小高度和最小宽度。

于 2014-12-15T12:37:25.717 回答