自适应高度的Lable

网络上已有很多这个知识说明,以前学习时,老师也讲过,不过还是纪录一下,主要是留给自己看的哈,勿喜勿喷 小白

UILabel *lab = [[UILabel alloc] init];

NSString *labStr = @"“仓廪实而知礼节,衣食足而知荣辱”出自春秋时期辅佐齐桓公成为第一霸主的管仲之口,在《管子·牧民》的原文里是“仓廪实则知礼节,衣食足则知荣辱”。西汉史学家司马迁在《史记·管晏列传》的引文中改动了一个字:“则”改成了“而”,就有了为后世津津乐道的“仓廪实而知礼节,衣食足而知荣辱”。现一般认为,“仓廪实而知礼节,衣食足而知荣辱”出自《史记·管晏列传》:“仓廪实而知礼节,衣食足而知荣辱,上服度则六亲固。四维不张,国乃灭亡。下令如流水之原,令顺民心。”释义为:粮仓充实就知道礼节;衣食饱暖就懂得荣辱;君王的享用有一定制度,六亲就紧紧依附;礼、义、廉、耻的伦理不大加宣扬,国家就会灭亡。颁布政令就好像流水的源头,要能顺乎民心。";

[self.view addSubview:lab];

UIFont *lfont = [UIFont systemFontOfSize:17];

lab.lineBreakMode = NSLineBreakByCharWrapping;

[lab setBackgroundColor:[UIColor redColor]];

lab.text = labStr;

CGSize size = CGSizeMake(250, MAXFLOAT);

NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:lfont,NSFontAttributeName, nil];

CGSize actualSize = [labStr boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:dic context:nil].size;

lab.frame = CGRectMake(10, 90, actualSize.width, actualSize.height);

lab.numberOfLines = 0;

lab.font = lfont;

你可能感兴趣的:(自适应高度的Lable)