转载自:http://code4app.com/snippets/one/%E8%8E%B7%E5%8F%96%E6%96%87%E5%AD%97%E9%AB%98%E5%BA%A6/5375684c933bf019248b495e#s0
ios7以上已经摒弃 sizeWithFont 这个方法,需要用到 boundingRectWithSize 来获取文字的高度
1
2
3
4
5
6
7
8
9
10
11
12
|
UIFont
*font = [ UIFont
fontWithName : @"Arial"
size : 1 4 ]; //跟label的字体大小一样 CGSize
size = CGSizeMake( 3 0 0 ,
2 9 9 9 9 ); //跟label的宽设置一样 if
(is_IOS_ 7 ) { NSDictionary
* dic = [ NSDictionary
dictionaryWithObjectsAndKeys :font,
NSFontAttributeName ,nil]; size
=[text
boundingRectWithSize :size
options : NSStringDrawingUsesLineFragmentOrigin
| NSStringDrawingUsesFontLeading
attributes :dic
context :nil ] .size ; } else { size
= [text
sizeWithFont :font
constrainedToSize :size
lineBreakMode :NSLineBreakByCharWrapping]; //ios7以上已经摒弃的这个方法 } |