01-UI基礎-02UILable

##繼承關係 Inherits From ##1、初始化html

UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(40, 40, 120, 44)];
     
[self.view addSubview:myLabel];

##2、屬性 ###2.一、text(標籤文本)ios

設置標籤顯示文本。app

###2.二、attributedText(標籤屬性文本)函數

設置標籤屬性文本。佈局

NSString *text = @"first";  
NSMutableAttributedString *textLabelStr = [[NSMutableAttributedString alloc] initWithString:text];  
[textLabelStr setAttributes:@{NSForegroundColorAttributeName : [UIColor lightGrayColor],   
 NSFontAttributeName : [UIFont systemFontOfSize:17]} range:NSMakeRange(11, 10)];
label.attributedText = textLabelStr;

###2.三、font(字體)字體

設置標籤文本字體。默認是系統自帶字體,大小爲17。code

label.font = [UIFont systemFontOfSize:17]
label.font = [UIFont fontWithName:@"Arial" size:16];

###2.四、textColor(文本顏色)htm

設置顏色繼承

myLabel.textColor = [UIColor blueColor];

###2.五、textAlignment(文本對齊)ip

設置標籤文本對齊方式。

label.textAlignment = NSTextAlignmentLeft //左對齊
label.textAlignment = NSTextAlignmentCenter //居中
label.textAlignment = NSTextAlignmentRight  //右對齊
label.textAlignment = NSTextAlignmentJustified//最後一行天然對齊
label.textAlignment = NSTextAlignmentNatural //默認對齊腳本

###2.六、lineBreakMode(文字剪裁)

設置標籤文字過長時的顯示方式,這個屬性使用於label中文本的換行和截短。首先numberofLines必須設置爲0,纔有效果。

// 以字符爲顯示單位顯示,後面部分省略不顯示。  
label.lineBreakMode = NSLineBreakByCharWrapping;
// 剪切與文本寬度相同的內容長度,後半部分被刪除。
label.lineBreakMode = NSLineBreakByClipping;
// 前面部分文字以……方式省略,顯示尾部文字內容。  
label.lineBreakMode = NSLineBreakByTruncatingHead;
// 中間的內容以……方式省略,顯示頭尾的文字內容。   
label.lineBreakMode = NSLineBreakByTruncatingMiddle; 
// 結尾部分的內容以……方式省略,顯示頭的文字內容。
label.lineBreakMode = NSLineBreakByTruncatingTail;
// 以單詞爲顯示單位顯示,後面部分省略不顯示。
label.lineBreakMode = NSLineBreakByWordWrapping;

label.numberOfLines = 0
label.lineBreakMode = NSLineBreakByTruncatingMiddle;

###2.七、enabled

設置文字內容是否可變。

###2.八、adjustsFontSizeToFitWidth(對齊基線)

文字內容自適應標籤寬度。

myLabel.adjustsFontSizeToFitWidth = YES;//調整基線位置需將此屬性設置爲YES
myLabel.baselineAdjustment = UIBaselineAdjustmentAlignBaselines;
/*三種值能夠選擇
UIBaselineAdjustmentAlignBaselines //文本最上端與Label中線對齊,默認值
UIBaselineAdjustmentAlignCenters   //文本中線與Label中線對齊
UIBaselineAdjustmentNone           //文本最下端與Label中線對齊
*/

###2.九、adjustsLetterSpacingToFitWidth(間隔自適應)

根據字母的間隔自適應標籤寬度,超出部分以……顯示。

###2.十、numberOfLines(行數)

標籤最多顯示行數。

###2.十一、minimumScaleFactor(最小字體)

設置最小字體,與minimumFontSize相同,minimumFontSize在IOS 6後不能使用。

iOS6.0以前:minimumFontSize iOS6.0以後:minimumScaleFactor

###2.十二、highlightedTextColor(高亮)

設置文本高亮顯示顏色,與highlighted一塊兒使用。

myLabel.highlighted = YES;//是否高亮
myLabel.highlightedTextColor = [UIColor redColor];//高亮顏色;此屬性在設置按鈕的titleLabel時,不管highlighted是YES仍是NO,在按鈕按下時標題都顯示此高亮顏色

###2.1三、shadowColor(陰影)

設置文本陰影顏色。

myLabel.shadowColor = [UIColor grayColor];//陰影顏色,默認爲nil

###2.1四、shadowOffset(陰影偏移量)

設置文本陰影與原文本的偏移量。

myLabel.shadowOffset = CGSizeMake(1, 1);//陰影的偏移點

###2.1五、userInteractionEnabled

設置標籤是否忽略或移除用戶交互。默認爲NO。

###2.1六、preferredMaxLayoutWidth

優先選擇標籤佈局的最大寬度。

###2.1七、baselineAdjustment

若是adjustsFontSizeToFitWidth屬性設置爲YES,這個屬性就來控制文本基線的行爲。

label4.baselineAdjustment = UIBaselineAdjustmentNone;  
UIBaselineAdjustmentAlignBaselines=0,默認,文本最上端與中線對齊。  
UIBaselineAdjustmentAlignCenters,   文本中線與label中線對齊。  
UIBaselineAdjustmentNone,  文本最低端與label中線對齊。

###2.1八、backgroundColor(背景顏色)

// 清空背景顏色
label1.backgroundColor = [UIColor clearColor];

##3、位置 ###3.一、計算UIlabel 隨字體多行後的高度

CGRect result,bounds;
bounds = CGRectMake(0, 0,200, 300);
heightLabel = [myLabel textRectForBounds:bounds limitedToNumberOfLines:20];//計算20行後的Label的Frame
NSLog(@"%f",heightLabel.size.height);

###3.二、繪製text到指定區域

- (void)drawTextInRect:(CGRect)rect
//須要重載此方法,而後由子類調用,重寫時調用super能夠按默認圖形屬性繪製,若本身徹底重寫繪製函數,就不用調用super了

##4、官方文檔 https://developer.apple.com/library/ios/documentation/UIKit/Reference/UILabel_Class/index.html#//apple_ref/occ/cl/UILabel

相關文章
相關標籤/搜索