美文网首页
iOS-UILabel

iOS-UILabel

作者: Swift从入门到崩溃 | 来源:发表于2016-08-02 23:22 被阅读0次

    一.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

          本文链接:https://www.haomeiwen.com/subject/bdhqsttx.html