获取固定宽度字符串的高度,适用于自适应UILabel TableViewCell

+(CGFloat)getStringHight:(NSString*)l_str_input font:(UIFont*)l_font width:(CGFloat)l_width

{

   if (l_str_input == nil || l_font == nil || l_width <= 0) {

       return0.0f;

   }


   CGSize l_size = CGSizeMake(l_width, MAXFLOAT);


   if ( [[[UIDevicecurrentDevice] systemVersion] floatValue]>=7.0 )

   {


       NSDictionary *attributesDictionary = [NSDictionarydictionaryWithObjectsAndKeys:

                                             l_font, NSFontAttributeName,

                                             nil];


       CGSize textSize = [l_str_input boundingRectWithSize:l_size//用于计算文本绘制时占据的矩形块

                                               options:NSStringDrawingUsesLineFragmentOrigin//文本绘制时的附加选项

                                            attributes:attributesDictionary// 文字的属性

                                               context:nil].size;

       return textSize.height;

   }else{


       CGSize textSize = [l_str_input sizeWithFont:l_font

                             constrainedToSize:l_size

                                 lineBreakMode:NSLineBreakByWordWrapping];


       return textSize.height;


   }

}