美文网首页
计算UILabel行高

计算UILabel行高

作者: 面试小集 | 来源:发表于2016-01-19 11:09 被阅读155次

    需求

    问题

    UILable的宽度是屏幕的三分之一,高度设为两行,超出的部分截断。由于UILable的高度可能是一行,也可能是两行,为了美观,一行的时候,文字要剧中。
    起初的实现是:

        titleLabel.textAlignment = NSTextAlignmentCenter;
        titleLabel.lineBreakMode = NSLineBreakByWordWrapping;
        CGFloat titleHeight = [Statics formatFontSize:titleLabel content:title fontSize:12*SIZE_SCALE constrSize:CGSizeMake(SCREENWIDTH, 2000)].height;
        titleLabel.frame = CGRectMake(0, subTitleLabel.frame.origin.y-2*titleHeight-5*SIZE_SCALE, (ScreenWidth - 1*SIZE_SCALE)/3, 2*titleHeight);
    

    然而出现的问题是:当文字的实际长度超过SCREENWIDTH的时候计算出的高度不是理想高度,随将SCREENWIDTH改为INT32_MAX,问题是解决了,但感觉这不是最好的方法。

    相关文章

      网友评论

          本文标题:计算UILabel行高

          本文链接:https://www.haomeiwen.com/subject/cmwkkttx.html