UILabel的使用

简介

UILabel是iOS中最基本的控件,主要用来显示文本信息。

常用的属性和方法

1.创建

  • OC
CGRect frame = CGRectMake(0, 0, 100, 200);
UILabel * label = [[UILabel alloc] initWithFrame:frame];
  • Swift
let label = UILabel.init(frame: CGRect(x: 0, y: 0, width: 100, height: 200))

2.text设置和读取文本的内容

  • OC
label.text = @"文本信息";//设置内容
NSLog(@"%@",label);//读取内容
  • Swift
label.text = "文本内容"
print(label)

3.给text设置字体颜色

  • OC
label.textColor = [UIColor redColor];
  • Swift
label.textColor = UIColor.red

4.设置文字大小

  • OC
label.font = [UIFont systemFontOfSize:20]; //一般方法
label.font = [UIFont boldSystemFontOfSize:20]; //加粗方法
label.font = [UIFont fontWithName:@"Arial" size:16]; //指定
  • Swift
label.font = UIFont.systemFont(ofSize: 15)
label.font = UIFont.boldSystemFont(ofSize: 20)
label.font = UIFont.init(name: "Arial", size: 20)

字体的方法

5.textAlignment的设置

  • OC
label.textAlignment = NSTextAlignmentLeft;  //right center 
  • Swift
label.textAlignment = .right //.center .left

6.numberOfLines 标签最多显示行数,如果为0则表示多行

  • OC
label.numberOfLines = 2
  • Swift
label.numberOfLines = 0

7.enabled 只是决定了Label的绘制方式,将它设置为NO将会使文本变暗,表示它没有激活,这时向它设置颜色值是无效的。

  • OC
label.enable = NO;
  • Swift
label.isEnabled = false  //  swift 中只有  true or false

8.highlighted 是否高亮显示

  • OC
label.highlighted = YES;
label.highlightedTextColor = [UIColor orangeColor]; //高亮
  • Swift
label.isHighlighted = true
label.highlightedTextColor = UIColor.orange

文本的显示颜色

9.ShadowColor 设置阴影颜色

  • OC
[label setShadowColor:[UIColor redColor]];
  • Swift
label.shadowColor = UIColor.red

10.ShadowOffset 设置阴影偏移量

  • OC
[label setShadowOffset:CGSizeMake(-1, -1)];
  • Swift
label.shadowOffset = CGSize(width: -1, height: -1)

11.baselineAdjustment 如果adjustsFontSizeToFitWidth属性设置为YES,这个属性就来控制文本基线的行为。
OC

label.baselineAdjustment = UIBaselineAdjustmentNone;
//UIBaselineAdjustmentAlignBaselines = 0,默认,文本最上端与中线对齐。
//UIBaselineAdjustmentAlignCenters,  文本中线与label中线对齐。
//UIBaselineAdjustmentNone, 文本最低端与label中线对齐。
  • Swift
label.baselineAdjustment = .none //.alignBaselines .alignCenters

12.Autoshrink 是否自动收缩
Fixed Font Size 默认,如果Label宽度小于文字长度时时,文字大小不自动缩放
minimumScaleFactor 设置最小收缩比例,如果Label宽度小于文字长度时,文字进行收缩,收缩超过比例后,停止收缩。
minimumFontSize 设置最小收缩字号,如果Label宽度小于文字长度时,文字字号减小,低于设定字号后,不再减小。6.0以后不再使用了。

  • OC
label.minimumScaleFactor = .5;
  • Swift
label.minimumScaleFactor = 0.5

13.lineBreakMode 设置文字过长时的显示格式

  • OC
label.lineBreakMode = NSLineBreakByClipping;//剪切与文本宽度相同的内容长度,后半部分被删除。
    label.lineBreakMode = NSLineBreakByTruncatingHead;//前面部分文字以……方式省略,显示尾部文字内容。
    label.lineBreakMode = NSLineBreakByTruncatingMiddle;//中间的内容以……方式省略,显示头尾的文字内容。
    label.lineBreakMode = NSLineBreakByTruncatingTail;//结尾部分的内容以……方式省略,显示头的文字内容。
    label.lineBreakMode = NSLineBreakByWordWrapping;//以单词为显示单位显示,后面部分省略不显示。
  • Swift
label.lineBreakMode = .byCharWrapping

14.adjustsFontSizeToFitWidth 设置字体大小适应label宽度

  • OC
label.adjustsFontSizeToFitWidth = true;
  • Swift
label.adjustsFontSizeToFitWidth = true

15.adjustsLetterSpacingToFitWidth 改变字母之间的间距来适应Label大小

  • OC
label.adjustsLetterSpacingToFitWidth = YES;//6.0--7.0
  • Swift
并没有这个方法

16.attributedText:设置标签属性文本

  • OC
    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;

你可能感兴趣的:(UILabel的使用)