美文网首页
boundingRectWithSize计算高度为0的问题

boundingRectWithSize计算高度为0的问题

作者: 狗狗臭鸡蛋 | 来源:发表于2018-10-24 16:56 被阅读6次

记一个小问题,在 iOS8下,貌似也不是所有8的系统,也不去纠结这个,

NSMutableAttributedString *calStr = [[NSMutableAttributedString alloc] initWithString:title];
[calStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:14] range:NSMakeRange(0, title.length)];
//    [calStr addAttribute:NSBaselineOffsetAttributeName value:@0 range:NSMakeRange(0, title.length)];
CGSize calSize = CGSizeMake(200, 14);
CGSize size = [calStr boundingRectWithSize:calSize options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading context:nil].size;
    
NSLog(@"size = %@", NSStringFromCGSize(size));

这样直接计算出来的高度为 0

size = {0, 0}

解决,就是把注释打开,增加 NSBaselineOffsetAttributeName 属性,这样输出的高度就是正确的了。

相关文章

网友评论

      本文标题:boundingRectWithSize计算高度为0的问题

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