UILabel的各種屬性

2021-07-11 23:51:59 字數 4527 閱讀 5242

·uilable是iphone介面最基本的控制項,主要用來顯示文字資訊。

·常用屬性和方法有:

1、建立

cgrect rect = cgrectmake(100, 200, 50, 50);

uilabel *label = [[uilabel alloc] initwithframe:rect];

2、text //設定和讀取文字內容,預設為nil

label.text = @」文字資訊」; //設定內容

nslog(@」%@」, label.text); //讀取內容

3、textcolor //設定文字顏色,預設為黑色

lable.textcolor = [uicolor redcolor];

4、font //設定字型大小,預設17

label.font = [uifont systemfontofsize:20]; //⼀一般方法

label.font = [uifont boldsystemfontofsize:20]; //加粗方法

label.font = [uifont fontwithname:@"arial" size:16]; //指定

字型的方法

//還有⼀一種從外部匯入字型的方法。

5、textalignment //設定標籤文字對齊方式。

label.textalignment = nstextalignmentcenter; //還有

nstextalignmentleft、 nstextalignmentright.

6、numberoflines //標籤最多顯示行數,如果為0則表示多行。

label.numberoflines = 2;

7、enabled //只是決定了label的繪製方式,將它設定

為no將會使文字變暗,表示它沒有啟用,這時向它設定顏色值是無效的。

label.enable = no;

8、highlighted //是否高亮顯示

label.highlighted = yes;

label.highlightedtextcolor = [uicolor orangecolor]; //高亮

顯示時的文字顏色

9、shadowcolor //設定陰影顏色 

[label setshadowcolor:[uicolor blackcolor]];

10、shadowoffset //設定陰影偏移量

[label setshadowoffset:cgsizemake(-1, -1)];

11、baselineadjustment //如果adjustsfontsizetofitwidth屬性設

置為yes,這個屬性就來控制文字基線的行為。

label.baselineadjustment = uibaselineadjustmentnone;

uibaselineadjustmentalignbaselines = 0,預設,文字最上端與中線對齊。

uibaselineadjustmentaligncenters,  文字中線與label中線對齊。

uibaselineadjustmentnone, 文字最低端與label中線對齊。

12、autoshrink //是否自動收縮

fixed font size 預設,如果label寬度小於文字長度時時,文字大小不自動縮放

minimumscalefactor 設定最小收縮比例,如果label寬度小於文字長度時,文字

進行收縮,收縮超過比例後,停止收縮。

minimumfontsize 設定最小收縮字型大小,如果label寬度小於文字長度時,文字字型大小

減小,低於設定字型大小後,不再減小。以後不再使用了。

label.minimumscalefactor = 0.5;

13、adjustsletterspacingtofitwidth //改變字母之間的間距來適應label大小

mylabel.adjustsletterspacingtofitwidth = no;

14、 linebreakmode //設定文字過長時的顯示格式             

示,後面部分省略不顯示。

label.linebreakmode = nslinebreakbyclipping;剪下與文字寬度相同的內

容長度,後半部分被刪除。

label.linebreakmode = nslinebreakbytruncatinghead;前面部分文字

以……方式省略,顯示尾部文字內容。

label.linebreakmode = nslinebreakbytruncatingmiddle;中間的內容

以……方式省略,顯示頭尾的文字內容。

label.linebreakmode = nslinebreakbytruncatingtail;結尾部分的內容

以……方式省略,顯示頭的文字內容。

示,後面部分省略不顯示。

15、 adjustsfontsizetofitwidth //設定字型大小適應label寬度  

label.adjustsfontsizetofitwidth = yes;

16、attributedtext:設定標籤屬性文字。

nsstring *text = @"first";

nsmutableattributedstring *textlabelstr =

[[nsmutableattributedstring alloc]

initwithstring:text];

[textlabelstr

setattributes:@ range:nsmakerange(11,

10)];

label.attributedtext = textlabelstr;

17、豎排文字顯示每個文字加乙個換行符,這是最方便和簡單的實現方式。

label.text = @"請\n豎\n直\n方\n向\n排\n列";

label.numberoflines = [label.text length];

18、計算uilabel 隨字型多行後的高度

cgrect bounds = cgrectmake(0, 0, 200, 300);

heightlabel = [mylabel textrectforbounds:bounds

limitedtonumberoflines:20]; //計算20行後的label的frame

nslog(@"%f",heightlabel.size.height);

19、uilabel根據字數多少自動實現適應高度

uilabel *msglabel = [[uilabel alloc]

initwithframe:cgrectmake(15, 45, 0, 0)];

msglabel.backgroundcolor = [uicolor lighttextcolor];

[msglabel setnumberoflines:0];

msglabel.linebreakmode = uilinebreakmodewordwrap;

msglabel.font = [uifont fontwithname:@"arial" size:12];

cgsize size = cgsizemake(290, 1000);

msglabel.text = @"獲取到的devicetoken,我們可以通過webservice服務提

交給.net應用程式,這裡我簡單處理,直接列印出來,拷貝到.net應用環境中使

用。";

cgsize msgsie = [msglabel.text sizewithfont:fonts

constrainedtosize:size];

[msglabel setframe:cgrectmake(15, 45, 290, msgsie.height)];

20、漸變字型label

uicolor *titlecolor = [uicolor colorwithpatternimage:[uiimage

imagenamed:@"btn.png"]];

nsstring *title = @"setting";

uilabel *titlelabel = [[uilabel alloc]

initwithframe:cgrectmake(0, 0, 80, 44)];

titlelabel.textcolor = titlecolor;

titlelabel.text = title;

titlelabel.font = [uifont boldsystemfontofsize:20];

titlelabel.backgroundcolor = [uicolor clearcolor];

[self.view addsubview:titlelabel];

[titlelabel release];

21、label新增邊框

titlelabel.layer.bordercolor = [[uicolor graycolor] cgcolor];

titlelabel.layer.borderwidth = 2;

UILabel的各種屬性與方法的使用

import labeltestviewcontroller.h implementation labeltestviewcontroller accessing the text attributes text property font property textcolor property t...

UILabel屬性總結

1.設定粗體 alabel2 font uifont boldsystemfontofsize 20 2.判斷字型大小適應label寬度 alabel1 adjustsfontsizetofitwidth yes 3.設定高亮,只有highlighted 為yes字型才顯示高亮的顏色,配套使用.al...

UI程式設計 UILabel及其屬性

ui01 uilabel created by dllo on 15 7 10.end self.window uiwindow alloc initwithframe uiscreen mainscreen bounds self.window.backgroundcolor uicolor wh...