我发现this solution如何使UILabel
高度符合其内容。例如,如果我遵循建议的指令并修改垂直 ContentHuggingPriority 和垂直 ContentCompressionResistancePriority ,则效果很好。因此,故事板自动将UILabel高度调整为文本高度。如果我对水平 ContentHuggingPriority 和 ContentCompressionResistancePriority 进行相同操作并编辑UILabel
宽度约束优先级,则UILabel
会使宽度与文字宽度相符。
我的问题是如何设置参数以适应文本高度和文本宽度的大小?因为看起来我们只能适应或高度或宽度的UILabel内容。
答案 0 :(得分: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;
}
这将根据给定的文字和最小高度和最小宽度为您提供标签尺寸。