本文給大家分享的是ios動(dòng)態(tài)設(shè)置lbl文字標(biāo)簽的高度寬度的方法,一共給大家匯總了3種方法,小伙伴們根據(jù)自己的項(xiàng)目需求自由選擇。
代碼如下:
txtlbl.font = [UIFont boldSystemFontOfSize:14.0f];
txtlbl.numberOfLines = 0;
NSString *str = @" 阿方?jīng)Q定設(shè)立科技特網(wǎng)絡(luò)離開電視劇分w額兩個(gè)大陸高科技了了不見了日i倒計(jì)時(shí)離開我說老師肯德基弗蘭克薩江東父老將費(fèi)德勒說阿方?jīng)Q定設(shè)立科技特網(wǎng)絡(luò)離開電視劇分w額兩個(gè)大陸高科技了了不見了日i倒計(jì)時(shí)離開我立科說老師肯德基弗蘭克薩江東父老將費(fèi)德勒說";
CGSize size = [str sizeWithFont:txtlbl.font constrainedToSize:CGSizeMake(txtlbl.frame.size.width, MAXFLOAT) lineBreakMode:NSLineBreakByWordWrapping];
//根據(jù)計(jì)算結(jié)果重新設(shè)置txtlbl的尺寸
[txtlbl setFrame:CGRectMake(7, 0, 310, size.height)];
txtlbl.text = str;
方法二:
代碼如下:
// iOS7_API_根據(jù)文字 字?jǐn)?shù)動(dòng)態(tài)確定Label寬高
// 設(shè)置Label的字體 HelveticaNeue Courier
UIFont *fnt = [UIFont fontWithName:@"HelveticaNeue" size:24.0f];
_nameLabel.font = fnt;
// 根據(jù)字體得到NSString的尺寸
CGSize size = [_nameLabel.text sizeWithAttributes:[NSDictionary dictionaryWithObjectsAndKeys:fnt,NSFontAttributeName, nil]];
// 名字的H
CGFloat nameH = size.height;
// 名字的W
CGFloat nameW = size.width;
_nameLabel.frame = CGRectMake(0, 0, nameW,nameH);
方法三:
代碼如下:
// 寬度W
CGFloat contentW = self.bounds.size.width - _content.frame.origin.x - kMargin;
// label的字體 HelveticaNeue Courier
UIFont *fnt = [UIFont fontWithName:@"HelveticaNeue" size:18.0f];
_content.font = fnt;
_content.numberOfLines = 0;
_content.lineBreakMode = NSLineBreakByWordWrapping;
// iOS7中用以下方法替代過時(shí)的iOS6中的sizeWithFont:constrainedToSize:lineBreakMode:方法
CGRect tmpRect = [_content.text boundingRectWithSize:CGSizeMake(contentW, 1000) options:NSStringDrawingUsesLineFragmentOr
// 高度H
CGFloat contentH = tmpRect.size.height;
NSLog(@"調(diào)整后的顯示寬度:%f,顯示高度:%f"contentW,contentH);
_content.frame = CGRectMake(0, 0, contentW,contentH);
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注