iOS的UI開發(fā)其實(shí)比較簡單的,每個(gè)控件都有它自己的特性,根據(jù)要實(shí)現(xiàn)的功能選擇不同的控件就好了雇毫。
UILabel使用起來很簡單,initWithFrame之后踩蔚∨锓牛可以設(shè)置字體大小,顏色等馅闽,另外還有一些文字位置等屬性可以設(shè)置飘蚯。具體的信息可以參看iOS Developer Library中關(guān)于UILabel的定義。
但是很多時(shí)候福也,label里顯示的東西是從后臺(tái)傳過來的局骤,是不確定的,這時(shí)候需要我們對Label設(shè)置一下暴凑,讓它自適應(yīng)高度 以下是代碼:
UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)]; //初始化label
[label setNumberOfLines:0]; //設(shè)置自動(dòng)行數(shù)與字符換行
label.lineBreakMode = UILineBreakModeWordWrap;
NSString *s = @"這是一個(gè)測試B退Α!搬设!adsfsaf時(shí)發(fā)生發(fā)勿忘我勿忘我勿忘我勿忘我勿忘我阿阿阿阿阿阿阿阿阿阿阿阿阿啊00000000阿什頓穴店。撕捍。。"; // 測試字串
UIFont *font = [UIFont fontWithName:@"Arial" size:12];
CGSize size = CGSizeMake(320,2000); //設(shè)置一個(gè)行高上限
CGSize labelsize = [s sizeWithFont:font constrainedToSize:size lineBreakMode:UILineBreakModeWordWrap]; //計(jì)算實(shí)際frame大小泣洞,并將label的frame變成實(shí)際大小
label1.frame = CGRectMake(0, 0, labelsize.width, labelsize.height);