创建:
UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(50, 50, 100, 100)];
-
常用属性
1.显示文字
label.text = @"我是文本";
2.文字颜色(默认黑色)
label.textColor = [UIColor redColor];
3.字体及其大小
label.font = [UIFont systemFontOfSize:15];
4.文字对其方式
label.textAlignment = NSTextAlignmentLeft;
typedef NS_ENUM(NSInteger, NSTextAlignment) { NSTextAlignmentLeft = 0, // 沿左边对齐 NSTextAlignmentCenter = 1, // 中心对齐 NSTextAlignmentRight = 2, // 沿右边对齐 NSTextAlignmentJustified = 3, // 最后一行自然对齐 NSTextAlignmentNatural = 4, // 默认
} NS_ENUM_AVAILABLE_IOS(6_0);
5.文字显示的行数(0代表无限)
label.numberOfLines = 0;
6.富文本文字(带属性)
label.attributedText = [[NSAttributedString alloc] initWithString:@"我是attri" attributes:@{NSBackgroundColorAttributeName:[UIColor redColor]}];
7.文字数超标处理
label.lineBreakMode=NSLineBreakByCharWrapping;
typedef NS_ENUM(NSInteger, NSLineBreakMode) {
NSLineBreakByWordWrapping = 0, // 边缘处理 (默认)
NSLineBreakByCharWrapping, // 处理不合适的字符
NSLineBreakByClipping, // 简单线性处理
NSLineBreakByTruncatingHead, // 溢出的头部用省略号处理
NSLineBreakByTruncatingTail, // 溢出的尾部用省略号处理
NSLineBreakByTruncatingMiddle // 溢出的中间用省略号处理
} NS_ENUM_AVAILABLE(10_0, 6_0);
* ####中度使用属性
8.用户交互 (默认NO)
label.userInteractionEnabled = NO;
9.是否有效(默认YES,灰色)
label.enabled=NO;
10.阴影偏移量
label.shadowOffset = CGSizeMake(10, 10);
11.阴影颜色
label.shadowColor = [UIColor blackColor];
12.文字垂直方向对齐(只有文本行数为1时有效)
label.baselineAdjustment= UIBaselineAdjustmentAlignBaselines;
typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
UIBaselineAdjustmentAlignBaselines = 0, // 只有文本行数为1是有效 (默认) UIBaselineAdjustmentAlignCenters, // 文本中线于label中线对齐
UIBaselineAdjustmentNone, // 文本最低端与label中线对齐
};
备注:
这个属性只有当adjustsFontSizeToFitWidth=yes的时候而且numberOfLines是1的时候才起作用
若是UIBaselineAdjustmentAlignBaselines 的话 变小之后的字体和以前的字体 和label的y值的距离是不变的
若是UIBaselineAdjustmentAlignCenters的话 变小之后的字体和以前字体的中间center.y是不变的
若是UIBaselineAdjustmentNone的话 变小之后的字体和以前的字体距离label底部的距离是不变的
13.宽度自适应大小 (默认NO)
label.adjustsFontSizeToFitWidth = YES;
14.最小适应大小
label.minimumScaleFactor = 15;
15.阴影颜色
label.shadowColor=[UIColor blackColor];
16.高亮状态
label.highlighted = YES;
17.高亮状态文字颜色
label.highlightedTextColor = [UIColor redColor];
18.自动布局添加约束中,若文本超过了指定的最大宽度的时候 文本会另起一行 从而增加了label的高度
label.preferredMaxLayoutWidth = 20;
* ####方法
1.返回文本绘制矩形
-(CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines;
2.文本绘制函数
-(void)drawTextInRect:(CGRect)rect;