美文网首页
【iOS开发】iOS 中根据文字计算高度

【iOS开发】iOS 中根据文字计算高度

作者: xiacheng | 来源:发表于2016-05-09 10:09 被阅读2063次

    一、单行文本

    NSString *content = @"欢迎来到北京";
    CGSize size =[content sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14]}];
    

    二、多行文本

    1. 一般通过NSString 的
    - (CGRect)boundingRectWithSize:(CGSize)size
                           options:(NSStringDrawingOptions)options
                        attributes:(NSDictionary<NSString *,id> *)attributes
                           context:(NSStringDrawingContext *)context` 
    

    方法确定高度;
    size: 矩形的大小,如CGSizeMake(kScreenWidth, MAXFLOAT)
    options:

    NSStringDrawingUsesLineFragmentOrigin = (1 << 0),
    起点位置是行的起点,而不是原起点(没理解)
    NSStringDrawingUsesFontLeading = (1 << 1),
    应该是根据默认行间距来计算高度
    NSStringDrawingUsesDeviceMetrics = (1 << 3),
    利用图像边界而不是印刷体边界
    NSStringDrawingTruncatesLastVisibleLine = (1 << 5)
    截断并添加省略号到最后可见行如果文本不适合指定的边界。

    相关文章

      网友评论

          本文标题:【iOS开发】iOS 中根据文字计算高度

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