码迷,mamicode.com
首页 > 其他好文 > 详细

frame方式布局一段文子,设置宽高

时间:2015-07-04 00:44:54      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:

计算一段文字的宽高

/**
 *  计算一段文字的宽高
 *
 *  @param size       这段文字的最大宽高
 *  @param options    NSStringDrawingUsesLineFragmentOrigin
 *  @param attributes 文字的字体属性
 *  @param context    nil
 *
 *  @return 返回的是 CGRect 类型,frame
 */
- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(NSDictionary *)attributes context:(NSStringDrawingContext *)context NS_AVAILABLE_IOS(7_0);

第一种方法计算文字高度过时的方法

    //  首先设置文字的宽和高
    CGFloat textW = ?;
    CGSize textMaxWH = CGSizeMake(textW, ?);
    //设置文字的行数 设为0->会自动换行
    text_label.numberOfLines = 0;
    CGFloat textH = [text sizeWithFont:[UIFont systemFontOfSize:14] constrainedToSize:textMaxWH].height;

第二种方法计算文字高度

    //  首先设置文字的宽和高
    CGFloat textW = ?;
    CGSize textMaxWH = CGSizeMake(textW, ?);
    //设置文字的行数 设为0->会自动换行
    text_label.numberOfLines = 0;
    //设置内部文字的字体属性
    NSDictionary *attr = @{
                            NSFontAttributeName : [UIFont systemFontOfSize:14]
                            };
    CGFloat textH = [text boundingRectWithSize:textMaxWH options:NSStringDrawingUsesLineFragmentOrigin attributes:attr context:nil].size.height;

计算一句文字的宽度

    //设置内部文字的字体属性
    NSDictionary *attr = @{NSFontAttributeName:[UIFont systemFontOfSize:17]};
    CGFloat textW = [text sizeWithAttributes:attr].width;

frame方式布局一段文子,设置宽高

标签:

原文地址:http://www.cnblogs.com/ShaoYinling/p/4619964.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!