The iOS label is adaptive Based on the display content.
1-(void) setupLabel {2 // preparation 3 UILabel * textLabel = [[UILabel alloc] init]; 4 textLabel. font = [UIFont systemFontOfSize: 16]; 5 NSString * str = @ "222222222222222222222222222222222222222222"; 6 textLabel. text = str; 7 textLabel. backgroundColor = [UIColor redColor]; 8 textLabel. numberOfLines = 0; // set 9 textLabel based on the maximum number of rows. lineBreakMode = NSLineBreakByTruncatingTail; 10 CGSize maximumLabelSize = CGSizeMake (100,999 9); // maximum value of labelsize 11 // key statement 12 CGSize expectSize = [textLabelSizeThatFits: MaximumLabelSize]; 13 // don't forget to return the frame to the label. If xib is used to add constraints, you can only change the value of the constraint to 14 textLabel. frame = CGRectMake (20, 70, expectSize. width, expectSize. height); 15 [self. view addSubview: textLabel]; 16}