-(CGFloat)getStringHighInputWidth:(NSInteger)number fontSize:(NSInteger)sizeFont
{
// 第一个参数:宽度,高度,高度一般越大越好
// 第二个参数:计算的类型
// 第三个参数:字体的大小(label字体设置和这个参数一定同意)
// 第四个参数:nil;
CGRect rect =[self boundingRectWithSize:CGSizeMake(number, 3000) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont boldSystemFontOfSize:sizeFont]} context:nil];
return rect.size.height;
}
//获取字符串宽度
-(CGFloat)getStringWidthFontSize:(NSInteger)sizeFont
{
if ([[[UIDevice currentDevice] systemVersion] doubleValue] <= 7.0) {
CGSize size = [self sizeWithFont:[UIFont boldSystemFontOfSize:sizeFont] constrainedToSize:CGSizeMake(MAXFLOAT, 14) lineBreakMode:NSLineBreakByWordWrapping];
return size.width;
}else {
CGRect rect = [self boundingRectWithSize:CGSizeMake(MAXFLOAT, 14) options:NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont boldSystemFontOfSize:sizeFont]}
context:nil];
return rect.size.width + 10;
}
}
本文介绍了一种在iOS中计算字符串宽度和高度的方法,通过使用不同的系统版本适配策略确保了在各种设备上都能准确地测量出UILabel所需的空间大小。
1561

被折叠的 条评论
为什么被折叠?



