自动适应label

 CGFloat btnH = 300;

    NSString *text=@"你在这是NSString的对象方法,一个字符串实例调用该方法时,方法会通过传入的参数返回一个CGRect型数据,这个数据的size就是此时字符串显示成文本的尺寸。 家";

    UILabel *label  =[[UILabel alloc]init];

    label.text=text;

    label.numberOfLines=MAXFLOAT;

    label.backgroundColor=[UIColor whiteColor];

    label.textColor=[UIColor blackColor];

    CGRect  rect=[label.text boundingRectWithSize:CGSizeMake(btnH,MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:18]} context:nil];

    label.frame=CGRectMake(0, 100, rect.size.width, rect.size.height);

    [self.view addSubview: label];

原文地址:https://www.cnblogs.com/106dapeng/p/4675954.html