zoukankan      html  css  js  c++  java
  • 在固定宽度 下计算出实际的行高

    //根据字符串内容的多少  在固定宽度 下计算出实际的行高

    - (CGFloat)HelperTextHeightFromTextString:(NSString *)text (CGFloat)textWidth fontSize:(CGFloat)size

    {

        if ([self heperGetCurrentIOS] >= 7.0) {

            //iOS7之后

            /*

             第一个参数: 预设空间 宽度固定  高度预设 一个最大值

             第二个参数: 行间距 如果超出范围是否截断

             第三个参数: 属性字典 可以设置字体大小

             */

    //        NSDictionary *dict = @{NSFontAttributeName:[UIFont systemFontOfSize:size]};

    //        CGRect rect = [text boundingRectWithSize:CGSizeMake(textWidth, MAXFLOAT) options:NSStringDrawingTruncatesLastVisibleLine|NSStringDrawingUsesFontLeading|NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil];

            NSDictionary *dict=@{NSFontAttributeName: [UIFont systemFontOfSize:size]};

            CGRect rect = [text boundingRectWithSize:CGSizeMake(textWidth, MAXFLOAT) options:NSStringDrawingTruncatesLastVisibleLine|NSStringDrawingUsesFontLeading|NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil];

            

            

            

            //返回计算出的行高

            return rect.size.height;

            

        }else {

            //iOS7之前

            /*

             1.第一个参数  设置的字体固定大小

             2.预设 宽度和高度 宽度是固定的 高度一般写成最大值

             3.换行模式 字符换行

             */

            CGSize textSize = [text sizeWithFont:[UIFont systemFontOfSize:size] constrainedToSize:CGSizeMake(textWidth, MAXFLOAT) lineBreakMode:NSLineBreakByCharWrapping];

            return textSize.height;//返回 计算出得行高

        }

    }

  • 相关阅读:
    Android 获取当前系统时间
    Android下面的MD5加密
    产品管理有行业特殊性吗
    产品经理的人才模型
    什么样的人适合做产品经理
    产品经理是“通”才还是“专”才
    产品经理的职责都有哪些
    产品经理的知识结构是什么
    产品管理职位的级别都有哪些
    产品经理的职业发展路线是什么
  • 原文地址:https://www.cnblogs.com/OIMM/p/5095081.html
Copyright © 2011-2022 走看看