温馨提示×

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

发布时间:2020-09-25 08:49:26 来源:网络 阅读:832 作者:xx541100047 栏目:开发技术

+(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;


   }

}


免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。