UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)]; //设置自动行数与字符换行,为0标示无限制 [label setNumberOfLines:0]; label.lineBreakMode = NSLineBreakByWordWrapping;//换行方式 NSString *strTest = @"用中问和英文 混合测试! just test, good luck!! 看看行不行"; UIFont *font = [UIFont fontWithName:@"Arial" size:12]; label.font = font; CGSize size = CGSizeMake(LableWight,CGFLOAT_MAX);//LableWight标签宽度,固定的
//计算实际frame大小,并将label的frame变成实际大小
CGSize labelsize = [strTest sizeWithFont:font constrainedToSize:size lineBreakMode:label.lineBreakMode];
label.frame = CGRectMake(0,0, labelsize.width, labelsize.height); label.text = strTest; [self.view addSubview:label];