label自适应宽度

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_16588415/article/details/67639599

效果图


后一个文字是前一个文字的后面

self.nameLB = [[UILabelalloc]init];

    self.nameLB.numberOfLines =0;

    

    self.nameLB.backgroundColor = [UIColorredColor];

    [self.viewaddSubview:self.nameLB];

    

    self.ageLB = [[UILabelalloc]init];

    self.ageLB.numberOfLines =0;

    self.ageLB.backgroundColor = [UIColorgreenColor];

    [self.viewaddSubview:self.ageLB];


    NSString* str1 =@"这是一个测试数据";

    NSString* str21 =@"我也是一个测试数据";

    

    UIFont *font = [UIFontfontWithName:@"Arial"size:14];

    //设置一个行高上限

    CGSize size =CGSizeMake(375,2000);

    //计算实际frame大小,并将labelframe变成实际大小

    CGSize labelsize = [str1sizeWithFont:font constrainedToSize:sizelineBreakMode:UILineBreakModeWordWrap];

    self.nameLB.font = font;

    self.nameLB.text = str1;

    [self.nameLBsetFrame:CGRectMake(13,100, labelsize.width, labelsize.height)];

    NSLog(@"labelsize--%@",NSStringFromCGSize(labelsize));

    CGSize labelsize2 = [str21sizeWithFont:font constrainedToSize:sizelineBreakMode:UILineBreakModeWordWrap];

    self.ageLB.font = font;

    self.ageLB.text = str21;

    CGFloat x1 =CGRectGetMaxX(self.nameLB.frame);

    [self.ageLBsetFrame:CGRectMake(x1,100, labelsize2.width, labelsize2.height)];

没有更多推荐了,返回首页