代碼:
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//獲取字符串的寬度
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)可根據自己的實際情況進行設置
return sizeToFit.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)可根據自己的實際情況進行設置
return sizeToFit.height;
}
輸出:
2015-03-11 15:37:05.375 獲取字符串的寬度[4774:193097] 獲得字符串的寬度:320.000000
2015-03-11 15:37:05.376 獲取字符串的寬度[4774:193097] 獲得字符串的寬度:381.760010