iOS-UILabel

一.UILbel

UILabel是继承自UIView的一个字类,UIView中所拥有的属性,在UILabel中都有,这里我们就不用单独介绍了。我们通过代码回顾一下即可。我们重点讲诉UILabel自己所特有的属性。

1.继承自UIView的属性

一样的首先我们先创建一个UILabel的对象

let label1 = UILabel.init(frame: CGRectMake(20, 50, 300, 200))
 //2.添加到视图上
self.view.addSubview(label1)
label1.backgroundColor = UIColor.random()

2.UILabel特有的属性

2.1.text属性

text相信大家都不会陌生,就是文字的意思,即在label上显示文字

label1.text = "丢你螺母aaaaaaaaaaaaaaaabbb" 

2.2.font属性

font就是字体大小,通过这个属性我们改变text的字体大小

label1.font = UIFont.systemFontOfSize(30)
    //系统字体。可以改变字体大小

其中在这里面有很多方法。我们可以在这里设置自己的字体可以不使用系统的字体

//系统字体。可以改变字体大小,同时还可以设置文字的粗细。weight的取值0-1
    label1.font = UIFont.systemFontOfSize(30, weight: 0.5)
    label1.font = UIFont.boldSystemFontOfSize(30)
    //系统黑体,可以设置字体大小
    label1.font = UIFont.italicSystemFontOfSize(20)
    //系统斜体可以设置大小

这里我们可以通过如下的方法去读取系统字体的name

 //获取当前应用程序支持的所有的字体名
   let fontArr = UIFont.familyNames()
  //在这里我们可以看到fontArr的类型是数组类型
    print(fontArr)

接下来我们就进行对使用自己字体库进行设置

使用自己字体库的步骤
a.将ttf文件拖在工程中
b.将字体文件名在info.plist文件中通过Fonts provided by application添加进去
c.找到被添加的字体对应的字体名
d.通过下面的方法使用
通过字体名和字号来确定字体FZJKai-Z03S,HYZhuanShuF

label1.font = UIFont(name: "HYZhuanShuF", size: 20)

2.3文字颜色属性text.color

label1.textColor = UIColor.random()

4.设置阴影

 label1.shadowColor = UIColor.redColor()
 label1.shadowOffset = CGSize(width: 1, height: 2)
//阴影的偏移

5.设置对其方式

label1.textAlignment = .Left

6.设置文字高亮颜色

 //label正常情况下不是高亮状态
 label1.highlightedTextColor = UIColor.yellowColor()
 label1.highlighted = true//设置label是否是高亮

7.设置行数

label1.text = "these next 3 property allow the label to be autosized to fit a certain width by scaling the font size(s) by a scaling factor >= the minimum scaling factor"
    label1.numberOfLines = 0

当对label的行数有明确要求时,可label1.numberOfLines赋相应的值,若要其自动匹配相应的行数,则只需对其赋值为0即可,但是要注意其label 的宽度,不然也会显示不下。

8.设置换行模式

//ByCharWrapping以字符为单位换行,如果文字在指定行数内显示不全,后面的内容直接省略不显示(没有省略号)
//ByWordWrapping以单词为单位换行如果文字在指定行数内显示不全,后面的内容直接省略不显示(没有省略号)
//ByClipping以单词为单位换行如果文字在指定行数内显示不全,后面的内容直接省略不显示(没有省略号,会将单词截断)
//ByTruncatingHead,ByTruncatingMiddle,ByTruncatingTail以单词为单位换行如果文字在指定行数内显示不全,会在不同的位置使用省略号        
    label1.lineBreakMode = .ByTruncatingHead

你可能感兴趣的:(iOS-UILabel)