標(biāo)簽UILabel
UILabel常見的屬性
1.shadowColor屬性:設(shè)置陰影顏色 。
2.shadowOffset屬性:設(shè)置陰影偏移量鸥跟。
3.lineBreakMode屬性:設(shè)置文字過長時(shí)的顯示格式置森。取值有以下幾種:
typedef NS_ENUM(NSInteger, NSLineBreakMode) { /* What to do with long lines */
NSLineBreakByWordWrapping = 0, /* 單詞為顯示單位顯示,后面部分省略不顯示族阅。 */
NSLineBreakByCharWrapping, /* 以字符為顯示單位顯示案疲,后面部分省略不顯示。 */
NSLineBreakByClipping, /* 剪切與文本寬度相同的內(nèi)容長度矮烹,后半部分被刪除越庇。*/
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ì)使文本變暗速那,表示它沒有激活,這時(shí)向它設(shè)置顏色值是無效的岔绸。
9.numberOfLines屬性:設(shè)置文本最多行數(shù)理逊,為0時(shí)沒有最大行數(shù)限制。
10.adjustsLetterSpacingToFitWidth屬性:設(shè)置改變字母之間的間距來適應(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è)置最小收縮字號晋被,如果Label寬度小于文字長度時(shí),文字字號減小刚盈,低于設(shè)定字號后羡洛,不再減小。6.0以后不再使用了藕漱。
12.baselineAdjustment屬性:設(shè)置文本的基線位置欲侮,只有文本行數(shù)為1是有效崭闲。取值有以下幾種:
typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
UIBaselineAdjustmentAlignBaselines = 0, // 默認(rèn)值文本最上端于label中線對齊
UIBaselineAdjustmentAlignCenters, // 文本中線于label中線對齊
UIBaselineAdjustmentNone, // 文本最低端與label中線對齊
};
13.minimumScaleFactor屬性:設(shè)置最小收縮比例,如果Label寬度小于文字長度時(shí)锈麸,文字進(jìn)行收縮镀脂,收縮超過比例后,停止收縮忘伞。
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é)議,包含來自他們的方法舀奶,還有一些獨(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屬性,無委托方法)
UILabel不存在delegate屬性,無委托方法。
UILabel支持的事件
育勺。但荤。
UILabel開發(fā)中常見的功能
//清空背景顏色
label.backgroundColor = [UIColor clearColor];
//設(shè)置字體顏色為白色
label.textColor = [UIColor whiteColor];
//文字居中顯示
label.textAlignment = UITextAlignmentCenter;
//自動(dòng)折行設(shè)置
label.lineBreakMode = UILineBreakModeWordWrap;
label.numberOfLines = 0;