//以下是我工程中代碼的一段,僅供參考理解spa
NSString *tmpIntroduction = nil; tmpIntroduction = recommentMessage.bookIntroduction; NSLog(@"書籍介紹內容:%@",tmpIntroduction); UIFont *font = [UIFont fontWithName:@"Arial" size:11]; NSDictionary *dict = @{NSFontAttributeName:font}; CGSize setSize = CGSizeMake([UIScreen mainScreen].bounds.size.width - 10, MAXFLOAT); //以下方法繪製的是一個rect,根據輸入文字計算 CGRect tmpRect = [tmpIntroduction boundingRectWithSize:setSize options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil]; CGFloat height = tmpRect.size.height; NSLog(@"評論的高度:%f",
height);
code
//這是NSString的對象方法,一個字符串實例對象調用該方法時,方法會經過傳入的參數返回一個CGRect類型數據,這個數據的size就是此時字符串顯示成文本的尺寸。orm
//size:限制尺寸,計算文本繪製時所佔的矩形塊。例如本例子:size.w爲當前屏寬 - 10,size.h能夠設置成無限大MAXFLOAT以便於顯示全部文字內容。對象
//options:文本繪製時的附加選項,共有四種類型:一般使用NSStringDrawingUsesLineFragmentOrigin,表示整個文本將以每行組成的矩形爲單位計算整個文本的尺寸。字符串
//attributes:將本文UIFont存入字典傳到這裏,例如:NSDictionary *dic = @{NSFontAttributeName:font};it
//context:context上下文,包括一些信息,例如如何調整字間距以及縮放。該參數一般設爲nil.io
//注意:計算的文本超過了給定的最大的寬高,就返回最大寬高;若是沒有超過,就返回真實佔用的寬高class