• iOS UILabel计算宽度和高度


    1、根据文本计算size,这里需要传入attributes

        UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 100, 0, 0)];
        label.text = @"12331afaa我是谁的谁";
        label.textColor = [UIColor redColor];
        label.backgroundColor = [UIColor greenColor];
        label.font = [UIFont systemFontOfSize:20];
        [self.view addSubview:label];
    
        CGSize size = [label.text sizeWithAttributes:@{NSFontAttributeName:label.font}];
        label.frame = CGRectMake(20, 100, size.width, size.height);
        // 193.482031    heigth:23.867188
    Method 1

    2、富文本计算size

        CGSize size = [label.attributedText size];
        label.frame = CGRectMake(20, 100, size.width, size.height);
        // 193.482031    heigth:23.867188
    Method 2

    3、通过UIView的 sizeThatFits

        // 在单行文本的情况下,参数size设置多少都无所谓,所以里传了CGSizeZero
        CGSize size = [label sizeThatFits:CGSizeZero];
        label.frame = CGRectMake(20, 100, size.width, size.height);
        // 193.500000    heigth:24.000000
        
        // 可用此方法计算高度
        label.text = @"ABCDEFGHIJKLMN";
        label.numberOfLines = 0;
        label.textAlignment = NSTextAlignmentCenter;
        CGSize size = [label sizeThatFits:CGSizeMake(15, 0)];
        label.frame = CGRectMake(20, 100, size.width, size.height);
        // 15.000000    heigth:334.500000
    Method 3
  • 相关阅读:
    Test
    占位2
    开坑纪念
    function 类型(函数定义)----读书总结
    css位元素 after
    算法-哈希表
    CF547D
    CF538H
    CF516D
    CF505E
  • 原文地址:https://www.cnblogs.com/chenyanliang/p/9687756.html
Copyright © 2020-2023  润新知