关于UILabel行高根据内容自适应,代码如下:
UILabel *label = [[UILabel alloc] init];
label.font = [UIFont systemFontOfSize:14];
label.numberOfLines = 0;
NSString *string;
string = @"人生是一场旅程。我们经历了几次轮回,才换来这个旅程。而这个旅程很短,因此不妨大胆一些,不妨大胆一些去爱一个人,去攀一座山,去追一个梦……有很多事我都不明白。但我相信一件事。上天让我们来到这个世上,就是为了让我们创造奇迹。——《大鱼海棠》";
CGSize labelSize = [string boundingRectWithSize:CGSizeMake([UIScreen mainScreen].bounds.size.width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName: [UIFont systemFontOfSize: 14]} context:nil].size;
CGRect labelRect = CGRectMake(0, 20, labelSize.width, labelSize.height);
label.text = string;
label.frame = labelRect;
[self.view addSubview: label];
运行结果如图: