// 这里面是纯代码,关于label的各属性设置
//
// CGRect rect = CGRectMake(50, 50, 150, 45);
// self.label = [[UILabel alloc] initWithFrame:rect];
//
// // layer.borderColor -> 设置label的边框颜色
// self.label.layer.borderColor = [UIColor redColor].CGColor;
// // layer.borderWidth -> 设置label的边框宽度,如果不设置则边框不显示
// self.label.layer.borderWidth = 1;
//
// // text -> 设置label的内容
self.label.text = @"测试label";
// // 获取label的内容
NSLog(@"%@", self.label.text);
//
// // 设置label的字体颜色
self.label.textColor = [UIColor purpleColor];
// [self.view addSubview:self.label];
//
// // 设置label的内容对齐方式
// self.label.textAlignment = NSTextAlignmentCenter;
//
// // 设置label的字体大小(默认字体大小为17)
self.label.font = [UIFont systemFontOfSize:20]; // 一般设置
self.label.font = [UIFont boldSystemFontOfSize:20]; // 加粗设置
self.label.font = [UIFont fontWithName:@"" size:20]; // 指定字体
//
// // numberOfLines -> 设置label的最多显示行数,如果为0则表示多行
// self.label.numberOfLines = 2;
//
// // enable 只是决定了Label的绘制机制,将它设置为NO的时候,文本变暗,表示没有激活,这时对它的设置颜色值都是无效的
self.label.enabled = NO; // 但边框颜色依旧存在,只是字体变成灰色
//
// // highlighted -> 设置是否高亮显示
self.label.highlighted = YES;
self.label.highlightedTextColor = [UIColor orangeColor]; // 高亮时文本颜色
//
// // setShadowColor:UIColor -> 设置阴影颜色(该设置仅针对于文字内容)
// [self.label setShadowColor:[UIColor blackColor]];
// // setShadowOffset:CGSize -> 设置阴影偏移量
// [self.label setShadowOffset:CGSizeMake(-1, -1)];
//
// // 控制文本基线的设置
// /* 该属性有3个枚举值: 1、UIBaselineAdjustmentAlignBaselines 默认值,文本最上端与label中线对齐
// 2、UIBaselineAdjustmentAlignCenters 文本中线与label中线对齐
// 3、UIBaselineAdjustmentNone 文本最低端与中线对齐
// */
self.label.baselineAdjustment = UIBaselineAdjustmentNone;
self.label.baselineAdjustment = UIBaselineAdjustmentAlignCenters;
// self.label.baselineAdjustment = UIBaselineAdjustmentAlignBaselines;
//
// // adjustsFontSizeToFitWidth -> 设置label中字体是否自动适应大小
self.label.adjustsFontSizeToFitWidth = YES;
// // 设置最小收缩比例,如果Label宽度小于文字长度时,文字进行收缩,收缩超过比例后,停止收缩
self.label.minimumScaleFactor = 0.5;
//
self.label.adjustsFontForContentSizeCategory = YES;
self.label.adjustsLetterSpacingToFitWidth = YES;
//
// // lineBreakMode -> 设置当文字过长时的显示格式
// /* 该属性有6个枚举值: 1、NSLineBreakByCharWrapping 以字符为显示单位显示,后面部分省略不显示
// 2、NSLineBreakByClipping 剪切与文本宽度相同的内容长度,后半部分被删除。
// 3、NSLineBreakByWordWrapping 以单词为显示单位显示,后面部分省略不显示。
// 4、NSLineBreakByTruncatingHead 前面部分文字以……方式省略,显示尾部文字内容。
// 5、NSLineBreakByTruncatingMiddle 中间的内容以……方式省略,显示头尾的文字内容。
// 6、NSLineBreakByTruncatingTail 结尾部分的内容以……方式省略,显示头的文字内容。
// */
// self.label.lineBreakMode = NSLineBreakByCharWrapping;
self.label.lineBreakMode = NSLineBreakByClipping;
self.label.lineBreakMode = NSLineBreakByWordWrapping;
self.label.lineBreakMode = NSLineBreakByTruncatingHead;
self.label.lineBreakMode = NSLineBreakByTruncatingMiddle;
self.label.lineBreakMode = NSLineBreakByTruncatingTail;
//
//
//
/*
// 设置label标签 属性文本(带有属性的文本内容)
// 初始化标签
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 150, 45)];
// 设置文本内容
NSString *text = @"testlabelcontent";
// 初始化属性文本对象
NSMutableAttributedString *textLabelStr = [[NSMutableAttributedString alloc] initWithString:text];
// 设置属性文本对象属性
// @{NSForegroundColorAttributeName:[UIColor cyanColor],NSFontAttributeName:[UIFont systemFontOfSize:17] 这是一个字典
// NSForegroundColorAttributeName: 这是字典的固定key值,它对应的value值是一个UIColor类型的值
// NSFontAttributeName:
[textLabelStr setAttributes:@{NSForegroundColorAttributeName:[UIColor cyanColor],NSFontAttributeName:[UIFont systemFontOfSize:17]} range:NSMakeRange(2, 5)];
label.attributedText = textLabelStr;
[self.view addSubview:label];
*/
// // 竖排显示文字 ---> 给每个字后面加上一个换行符,这是最简单和方便的实现方式
// UILabel *secLabel = [[UILabel alloc] initWithFrame:CGRectMake(50, 150, 150, 50)];
// secLabel.text = @"这\n个\n是\n竖\n排\n方\n向\n的\n显\n示";
// secLabel.numberOfLines = [secLabel.text length];
// NSLog(@"%ld", [secLabel.text length]);
// secLabel.frame = CGRectMake(secLabel.frame.origin.x, secLabel.frame.origin.y, 50, 30 * (([secLabel.text length] + 1) / 2));
// NSLog(@"%f", secLabel.frame.size.height);
// CGRect bounds = CGRectMake(0, 0, 200, 300);
// CGRect heighLabel = [secLabel textRectForBounds:bounds limitedToNumberOfLines:10];
// NSLog(@"%f", heighLabel.size.height);
//
//
// secLabel.layer.borderColor = [UIColor orangeColor].CGColor;
// secLabel.layer.borderWidth = 1;
// secLabel.layer.cornerRadius = 15;
// secLabel.clipsToBounds = YES;
// [self.view addSubview:secLabel];
// 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 = @"这里只需要一段长一点的文字而已,所以随便写点什么,其实吧,代码毕竟是代码,它是死的,但是人是活的,只要这规则范围内,代码也不是不能更改的。";
// CGSize msgSize = [msgLabel.text sizeWithFont:msgLabel.font constrainedToSize:size];
// [msgLabel setFrame:CGRectMake(15, 150, 290, msgSize.height)];
// msgLabel.layer.borderWidth = 1;
// msgLabel.layer.borderColor = [UIColor orangeColor].CGColor;
//
// [self.view addSubview:msgLabel];
// // 渐变色字体label
// /* 实现思路: 1、通过一个渐变色的图片,[UIColor colorWithPatternImage:(UIImage *)]通过获取图片的颜色
// 2、将从渐变色图片中获取的颜色赋给label的textColor
// 3、将Label的背景色重新复制成clearColor
// */
// UIColor *titleColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"jbs.png"]];
// NSString *title = @"渐变色字体Label";
// UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(100, 200, 350, 80)];
// titleLabel.textColor = titleColor;
// titleLabel.text = title;
// titleLabel.font = [UIFont boldSystemFontOfSize:40];
// titleLabel.backgroundColor = [UIColor clearColor];
// [self.view addSubview:titleLabel];
// 24、设置Label 的倾斜度
// label.transform = CGAffineTransformMakeRotation(-0.2);