开发者社区 问答 正文

文本多行时获取标签高度

在detail视图中创建标签。设置相应文本时需要设置标签的高度。

NSString *mytitleString = [discussionData valueForKey:@"Name"];
 CGSize size =  [mytitleString sizeWithFont:[UIFont systemFontOfSize:14.0]  constrainedToSize:CGSizeMake(500, CGFLOAT_MAX)];
 float lbltitleheight = size.height;
 lbltitle.text = mytitleString;

如果文本很多行就无法设置标签的高度了,怎么办?

展开
收起
爵霸 2016-03-17 11:32:29 1846 分享 版权
1 条回答
写回答
取消 提交回答
  • 先给UILabel赋文本,再重新计算,重置uilabel的frame

    NSString *mytitleString = [discussionData valueForKey:@"Name"];
     lbltitle.text = mytitleString;
     lbltitle.font=[UIFont systemFontOfSize:14.0];
    
     CGSize size = [lbltitle.text sizeWithFont:lbltitle.font  constrainedToSize:CGSizeMake(500, CGFLOAT_MAX)];
    /////重置高度
    lbltitle.frame=CGRectMake(lbltitle.frame.origin.x,lbltitle.frame.origin.y,size.width,size.height);
    2019-07-17 19:04:58
    赞同 展开评论
问答分类:
问答地址: