文章来自:http://www.aichengxu.com/view/41622
/*之前使用了NSString类的sizeWithFont:constrainedToSize:lineBreakMode:方法,但是该方法已经被iOS7 Deprecated了,而iOS7新出了一个boudingRectWithSize:options:attributes:context方法来代替。
而具体怎么使用呢,尤其那个attribute(属性)
NSDictionary *attribute = @{NSFontAttributeName: [UIFont systemFontOfSize:13]};
CGSize stringSize = [string boundingRectWithSize:CGSizeMake(200, 300)
options:NSStringDrawingTruncatesLastVisibleLine|NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading
attributes:attribute context:nil].size;
typedef NS_ENUM(NSInteger, NSLineBreakMode) { /* What to do with long lines */
NSLineBreakByWordWrapping = 0,/* Wrap at word boundaries, default */
以单词为单位换行,以单位为单位截断。
NSLineBreakByCharWrapping, /* Wrap at character boundaries */
以字符为单位换行,以字符为单位截断。
NSLineBreakByClipping,/* Simply clip */
以单词为单位换行。以字符为单位截断。
NSLineBreakByTruncatingHead, /* Truncate at head of line: "...wxyz" */
以单词为单位换行。如果是单行,则开始部分有省略号。如果是多行,则中间有省略号,省略号后面有4个字符。