iOS面试题:动态计算文本高度的时候需要注意什么?

    + (CGSize)contentSizeForContent:(NSString *)content withFixedWidth:(CGFloat)width {
        CGSize maxSize = CGSizeMake(width, MAXFLOAT);
        UIFont *font = [UIFont systemFontOfSize:14.0];
        NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
        paragraphStyle.alignment = NSTextAlignmentLeft;
        CGRect suggestRect = [content boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName: font, NSParagraphStyleAttributeName: paragraphStyle} context:nil];
        
        CGSize resultSize = CGSizeMake(width, ceil(suggestRect.size.height));
        
        return resultSize;
    }

如上代码,需要注意算完高度需要用ceil来处理一下做向上取整。


更多:iOS面试题合集

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • B树的定义 一棵m阶的B树满足下列条件: 树中每个结点至多有m个孩子。 除根结点和叶子结点外,其它每个结点至少有m...
    文档随手记阅读 14,585评论 0 25
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,160评论 1 45
  • 相恨晚,柔情满 。风迎晚霞叶易残 春风暖,秋风寒。满腹相思,寄语夜阑 叹!叹!叹! 人隔索,情难却,凤飞蝶舞恍如昨...
    蓝梦奇阅读 3,811评论 4 10
  • 今天画完色相环,寻思着还要画些什么呢?刚开始在圆心中间画一朵花,画着画着就开始涂鸦了。 根据色轮的冷色和暖色分布随...
    紫晶Jane阅读 3,255评论 0 2
  • 3月27日,开始在简书上写作,当时的想法是每天500字先坚持21天,很顺利的完成了这个21天任务。后面也陆陆续续地...
    冰下的梦_58132阅读 1,586评论 0 0