標(biāo)簽UILabel
UILabel常見的屬性
1.shadowColor屬性:設(shè)置陰影顏色 。
2.shadowOffset屬性:設(shè)置陰影偏移量。
3.lineBreakMode屬性:設(shè)置文字過(guò)長(zhǎng)時(shí)的顯示格式。取值有以下幾種:
typedef NS_ENUM(NSInteger, NSLineBreakMode) { /* What to do with long lines */
NSLineBreakByWordWrapping = 0, /* 單詞為顯示單位顯示,后面部分省略不顯示。 */
NSLineBreakByCharWrapping, /* 以字符為顯示單位顯示,后面部分省略不顯示。 */
NSLineBreakByClipping, /* 剪切與文本寬度相同的內(nèi)容長(zhǎng)度,后半部分被刪除。*/
NSLineBreakByTruncatingHead, /* 前面部分文字以……方式省略,顯示尾部文字內(nèi)容。 */
NSLineBreakByTruncatingTail, /* 結(jié)尾部分的內(nèi)容以……方式省略,顯示頭的文字內(nèi)容。 */
NSLineBreakByTruncatingMiddle /* 中間的內(nèi)容以……方式省略,顯示頭尾的文字內(nèi)容 */
} NS_ENUM_AVAILABLE_IOS(6_0);
4.attributedText屬性:設(shè)置標(biāo)簽屬性文本。
5.highlightedTextColor屬性:設(shè)置高亮顯示時(shí)的文本顏色。
6.highlighted屬性:設(shè)置是否高亮顯示。
7.userInteractionEnabled屬性:設(shè)置是否能與用戶交互。
8.enabled屬性:只是決定了Label的繪制方式,將它設(shè)置為NO將會(huì)使文本變暗,表示它沒(méi)有激活,這時(shí)向它設(shè)置顏色值是無(wú)效的。
9.numberOfLines屬性:設(shè)置文本最多行數(shù),為0時(shí)沒(méi)有最大行數(shù)限制。
10.adjustsLetterSpacingToFitWidth屬性:設(shè)置改變字母之間的間距來(lái)適應(yīng)Label大小。
// default is NO, adjust letter spacing to make text fit. Note: setting this property to YES will cause the value of -[NSParagraphStyle tighteningFactorForTruncation] to be disregarded.
11.minimumFontSize屬性:設(shè)置最小收縮字號(hào),如果Label寬度小于文字長(zhǎng)度時(shí),文字字號(hào)減小,低于設(shè)定字號(hào)后,不再減小。6.0以后不再使用了。
12.baselineAdjustment屬性:設(shè)置文本的基線位置,只有文本行數(shù)為1是有效。取值有以下幾種:
typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
UIBaselineAdjustmentAlignBaselines = 0, // 默認(rèn)值文本最上端于label中線對(duì)齊
UIBaselineAdjustmentAlignCenters, // 文本中線于label中線對(duì)齊
UIBaselineAdjustmentNone, // 文本最低端與label中線對(duì)齊
};
13.minimumScaleFactor屬性:設(shè)置最小收縮比例,如果Label寬度小于文字長(zhǎng)度時(shí),文字進(jìn)行收縮,收縮超過(guò)比例后,停止收縮。
14.preferredMaxLayoutWidth屬性:設(shè)置preferredMaxLayoutWidth,autolayout才會(huì)判斷到折行的位置。知道一個(gè)確切的width當(dāng)然是最好的,那么直接設(shè)置即可,但是如果UILabel的寬度是自適應(yīng)的,不確定,那么可以使用如下的代碼設(shè)置
- (void)layoutSubViews
{
[super layoutSubViews];
self.label.preferredMaxLayoutWidth = self.label.bounds.size.width;
}
UILabel繼承自UIView并且遵守<NSCoding>協(xié)議,包含來(lái)自他們的方法,還有一些獨(dú)有方法:
- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines; // 計(jì)算numberOfLines行后的Label的Frame
- (void)drawTextInRect:(CGRect)rect;
//改變繪文字屬性.重寫時(shí)調(diào)用super可以按默認(rèn)圖形屬性繪制,若自己完全重寫繪制函數(shù),就不用調(diào)用super了.
UILabel的委托方法(不存在delegate屬性,無(wú)委托方法)
UILabel不存在delegate屬性,無(wú)委托方法。
UILabel支持的事件
。。
UILabel開發(fā)中常見的功能
//清空背景顏色
label.backgroundColor = [UIColor clearColor];
//設(shè)置字體顏色為白色
label.textColor = [UIColor whiteColor];
//文字居中顯示
label.textAlignment = UITextAlignmentCenter;
//自動(dòng)折行設(shè)置
label.lineBreakMode = UILineBreakModeWordWrap;
label.numberOfLines = 0;