首页 > 代码库 > IOS7.0 UILabel实现自适应高度的新方法

IOS7.0 UILabel实现自适应高度的新方法

//IOS7.0中利用- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(NSDictionary *)attributes context:(NSStringDrawingContext *)context 方法可以获取label的Size大小,来自适应高度,取代了之前的- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(NSLineBreakMode)lineBreakMode的方法来自适应高度    //IOS7才有的方法,label根据内容自适应高度    //设置最大的size,width 为200 高度最大为999    CGSize maxLabelSize = CGSizeMake(200, 999);    NSStringDrawingOptions options;    options = NSStringDrawingTruncatesLastVisibleLine |    NSStringDrawingUsesLineFragmentOrigin;    //设置label中字体的大小    NSDictionary *attr = @{NSFontAttributeName: [UIFont systemFontOfSize:20]};    //nodeString 是要展示的内容,其实就是测量一下nodeString 在label上面的大小    CGSize labelSize = [nodeString boundingRectWithSize:maxLabelSize                                            options:options                                           attributes:attr                                            context:nil].size;    NSLog(@"%s %d labelSize = (%f , %f)", __FUNCTION__, __LINE__, labelSize.width, labelSize.height);