前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Swift 3.0 探索之 UILabel

Swift 3.0 探索之 UILabel

作者头像
GuangdongQi
发布2018-05-24 17:39:07
7800
发布2018-05-24 17:39:07
举报
文章被收录于专栏:Guangdong QiGuangdong Qi

开篇

最近闲来无事,看看Swift3.0,发现和我认识的1.0有很大的不同了,如果不学习一下估计会落伍了,所以探究一下 Swift 在开发中的使用(当然目前是初级水平,一起进步嘛,也欢迎菜鸟,大神一起探讨 QQ群 139852091)

正题

UILabel是我们开发中常用的控件了,我今天就拿它开刀,看一下我们在开发中常用的UILabel属性

创建已经常规设置
代码语言:javascript
复制
        //let 变量名字 = 变量类型(这是一个变量声明方法)
        let myLabel = UILabel()
        myLabel.text = "我是一个Label" //设置text  相比OC 省略了@“” 直接引号 类似Java
        myLabel.font = UIFont.systemFont(ofSize: 20) //设置字体大小
        myLabel.backgroundColor = UIColor.red // 设置背景颜色
        myLabel.textColor = UIColor .yellow //设置字体颜色
        myLabel.frame = CGRect.init(x: 100, y: 100, width: 180, height: 50) //设置frame
        myLabel.textAlignment = NSTextAlignment.center //设置字体居中显示
        myLabel.shadowColor = UIColor.black //设置阴影的颜色
        myLabel.shadowOffset = CGSize.init(width: 2.0, height: 2.0) //设置阴影偏移量
设置 lineBreakMode(如果字体显示不开,采取的显示方式)
代码语言:javascript
复制
        myLabel.lineBreakMode = NSLineBreakMode.byTruncatingTail  //隐藏尾部并显示省略号
        myLabel.lineBreakMode = NSLineBreakMode.byTruncatingMiddle  //隐藏中间部分并显示省略号
        myLabel.lineBreakMode = NSLineBreakMode.byTruncatingHead  //隐藏头部并显示省略号
        myLabel.lineBreakMode = NSLineBreakMode.byClipping  //截去多余部分也不显示省略号
设置 adjustsFontSizeToFitWidth

需要注意的是 当设置 adjustsFontSizeToFitWidth 属性为true的时候 设置lineBreakMode属性将失效

代码语言:javascript
复制
        //当设置下面的 adjustsFontSizeToFitWidth 属性为true的时候 上面设置的lineBreakMode属性将失效
        myLabel.adjustsFontSizeToFitWidth = true //当文字超出标签宽度时,自动调整文字大小
        myLabel.numberOfLines = 0 //返回int 类型  设置0没有行数限制 1、2、3、4对应1、2、3、4行
设置高亮属性
代码语言:javascript
复制
        myLabel.isHighlighted = true //设置文本高亮
        myLabel.highlightedTextColor = UIColor.green //设置文本高亮颜色
添加试图
代码语言:javascript
复制
self.view.addSubview(myLabel) //添加到试图上

下面我运行了一下程序,显示如下(图1)

�图1

NSAttributedString 富文本

我们还经常使用 Label 的一个属性是NSAttributedString 我们看一下这个在Swift里面怎么使用 ****当设置NSAttributedString属性的时候,设置的text将失效,其textColor、font等属性将保留没有被改变的(OC Swift通用属性)****

代码语言:javascript
复制
        //富文本设置
        let attributeString = NSMutableAttributedString(string:"我是一个Label")
        //range NSMakeRange 从文本 XX位开始 开始 XX个字符
        //字体大小12号
        attributeString.addAttribute(NSFontAttributeName,
                                     value: UIFont.systemFont(ofSize: 12),
                                     range: NSMakeRange(0,2))
        //设置字体颜色
        attributeString.addAttribute(NSForegroundColorAttributeName, value: UIColor.blue,
                                     range: NSMakeRange(2, 2))
        //设置文字背景颜色
        attributeString.addAttribute(NSBackgroundColorAttributeName,
                                     value: UIColor.yellow,
                                     range: NSMakeRange(4,5))
        myLabel.attributedText = attributeString

运行看效果(图2)

图2.png

好了,今天差不多就这些,明天继续看,看一个最简单的UIView吧,代码我稍后会上传的群文件(QQ群 139852091)网盘已经git,明个见!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016.11.25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 开篇
    • 正题
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档