UILabel 自动换行 和支持换行符

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSMutableAttributedString *str = [[NSMutableAttributedString alloc]initWithString:@"你要放在label里的文本字符串  \n  换行符"];
    [str addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:14]  range:NSMakeRange(0, str.length)];
    CGSize maxSize = CGSizeMake(kWidth - 40,MAXFLOAT);
    self.attrStrSize = [str boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin context:nil].size;
    self.firstLabel.attributedText = str;
}

-(UILabel *)firstLabel{
    
    if(!_firstLabel){
        
        _firstLabel = [[UILabel alloc]initWithFrame:CGRectMake(20, 20, self.attrStrSize.width, self.attrStrSize.height)];
        _firstLabel.numberOfLines = 0;//表示label可以多行显示
        _firstLabel.lineBreakMode = NSLineBreakByCharWrapping;//换行模式,与上面的计算保持一致。
        [self.view  addSubview:_firstLabel];
    }
    return _firstLabel;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容