首页 > 其他 > 详细

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

时间:2015-07-04 00:42:05      阅读:326      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!