iOS 获取字符串的高度和宽度

方法1:

CGRectlabelsize =[@"门店已接单,用户取消订单"boundingRectWithSize:CGSizeMake(SCREEN_WIDTH-150,2000)options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeadingattributes:@{NSFontAttributeName:Font(14)}context:nil];

state= [[UILabelalloc]initWithFrame:CGRectMake(CGRectGetMaxX(pate.frame) +6,10, labelsize.size.width,14)];

方法2:

- (void)viewDidLoad {

[super viewDidLoad];

//获取字符串的宽度

NSLog(@"获得字符串的宽度:%f",[self widthForString:@"我爱你!我爱你!我爱你!我爱你!我爱你!我爱你!我爱你!我爱你!"fontSize:10.0 andHeight:10.0]);

//获取字符串的高度

NSLog(@"获得字符串的宽度:%f",[self heightForString:@"我爱你!我爱你!我爱你!我爱你!我爱你!我爱你!我爱你!我爱你!"fontSize:10.0 andWidth:10.0]);

}

#pragma -mark -functions

//获取字符串的宽度

-(float) widthForString:(NSString *)value fontSize:(float)fontSize andHeight:(float)height

{

CGSize sizeToFit = [value sizeWithFont:[UIFont systemFontOfSize:fontSize] constrainedToSize:CGSizeMake(CGFLOAT_MAX, height) lineBreakMode:NSLineBreakByWordWrapping];//此处的换行类型(lineBreakMode)可根据自己的实际情况进行设置

returnsizeToFit.width;

}

//获得字符串的高度

-(float) heightForString:(NSString *)value fontSize:(float)fontSize andWidth:(float)width

{

CGSize sizeToFit = [value sizeWithFont:[UIFont systemFontOfSize:fontSize] constrainedToSize:CGSizeMake(width, CGFLOAT_MAX) lineBreakMode:NSLineBreakByCharWrapping];//此处的换行类型(lineBreakMode)可根据自己的实际情况进行设置

returnsizeToFit.height;

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容