前言:開(kāi)發(fā)中難免會(huì)遇到設(shè)置lable根據(jù)文字來(lái)調(diào)整高度和換行,具體做法如下.
sizethatfits方法
- 設(shè)置lable的frame,numberofLines,字體等.
UILabel *carTypeLN = [[UILabel alloc]init];
carTypeLN.frame = CGRectMake(margin+((margin+width)*lie), (row*(height+topMargin)), width,height);
- 根據(jù)本身的view的frame,對(duì)lable的frame進(jìn)行適配.
carTypeLN.textAlignment = NSTextAlignmentCenter;
carTypeLN.textColor = HEX_COLOR(kColor_Flag_GrayDark);
carTypeLN.backgroundColor = HEX_COLOR(kColor_BG_white);
carTypeLN.font = [UIFont systemFontOfSize:13];
carTypeLN.text = types[i];
CGSize size = [self sizeThatFits:CGSizeMake(carTypeLN.frame.size.height, MAXFLOAT)];
CGRect frame = carTypeLN.frame;
frame.size.height = size.height;
[carTypeLN setFrame:frame];
[self addSubview:carTypeLN];
carTypeLN.numberOfLines = 0;
根據(jù)lable的文字以及font,對(duì)特定的寬度適配出符合該段文字的高度,該種方法比較靈活.
CGSize labelSize = [self.contentLabel.text boundingRectWithSize:CGSizeMake([UIScreen mainScreen].bounds.size.width-130, 10000) options:NSStringDrawingUsesFontLeading|NSStringDrawingUsesDeviceMetrics|NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingTruncatesLastVisibleLine attributes:@{NSFontAttributeName:self.contentLabel.font} context:nil].size;
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。