现在的位置: 首页 > 综合 > 正文

UILabel无法换行问题

2017年08月17日 ⁄ 综合 ⁄ 共 657字 ⁄ 字号 评论关闭

刚刚在UILabel的文字的自动换行,我要打到的目的是使文字显示在一定的区域内,保持两行,多余放不下的字用点代替。通常设置UILabel自动适应高度并自动换行的代码如下:

CGRect frame = self.nameLabel.frame;
    UIFont *font = [UIFont systemFontOfSize:15.f];
    CGSize strSize = [activityName sizeWithFont:font constrainedToSize:CGSizeMake(frame.size.width, MAXFLOAT)lineBreakMode:NSLineBreakByTruncatingTail];
    self.nameLabel.numberOfLines = 0;
    self.nameLabel.frame = CGRectMake(frame.origin.x, frame.origin.y, frame.size.width, strSize.height);
    
    self.nameLabel.text = name;



我想的是既然在xib里已经设定好了UILabel的高度,那在

constrainedToSize:CGSizeMake(frame.size.width, MAXFLOAT)

处,我将MAXFLOAT设置为frame.size.height,应该就理想了,但是实际运行出来的结果是并没有换行!!尝试了几个数值之后,我发现这个高度要稍微比frame.size.height高一些,这样就会自动换行,达到想要的效果了!

抱歉!评论已关闭.