您的位置:首页 > 产品设计 > UI/UE

iOS UILabel的高度随着字数的多少变化而变化

2016-12-08 17:54 337 查看
_qustionlabel= [[UILabelalloc]initWithFrame:CGRectMake(0,0,
SCREEN_WIDTH,40)];

self.content_str //类型字符串,label的显示内容

CGRect rect = _qustionlabel.frame;

rect.size.height = [selfrecieveLabelHeight];

_qustionlabel.frame = rect;

//自适应label高度

-(CGFloat)recieveLabelHeight{

    _qustionlabel.numberOfLines =0;

    _qustionlabel.lineBreakMode =NSLineBreakByWordWrapping;

    _qustionlabel.textAlignment =NSTextAlignmentLeft;

    _qustionlabel.text = [NSStringstringWithFormat:@"%@%@",@" 
      ",self.content_str];

    _qustionlabel.font = [UIFontsystemFontOfSize:16];

    CGSize  labelSize  = [_qustionlabelsizeThatFits:CGSizeMake(SCREEN_WIDTH-40,MAXFLOAT)];

    CGFloat height     =ceil(labelSize.height);

    return height;

}

//计算label内容的行数row_number

@property
int row_number;

   CGFloat labelHeight = [self.driver_school_briefing
sizeThatFits:CGSizeMake(self.driver_school_briefing.frame.size.width,
MAXFLOAT)].height;

    NSNumber *count =
@((labelHeight) /
self.driver_school_briefing.font.lineHeight);

    self.row_number = [count
intValue];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: