swift

迟到的Swift入门 - UILabel

2020-09-03  本文已影响0人  刘_小_二

UILabel教程

1.UILabel基础教程

1. 创建文本

let label = UIlabel()

let label = UILabel(frame: CGRectMake(10, 100, 300, 30))

let artLabel: UILabel = UILabel(frame: CGRectMake(100,100,100,100))

例子:

//创建时设置frame
let label = UILabel(frame: CGRectMake(10, 100, 300, 30))
//添加到self.view上才会显示出来
self.view.addSubview(label)

//先创建,后设置frame
let label = UILabel()
label.frame = CGRectMake(10, 100, 300, 30)
self.view.addSubview(label)

2.文本属性配置

//设置tag值
label.tag = 51

//通过tag值获取
self.view.viewWithTag(51) as! UILabel

//设置背景色
label.backgroundColor = UIColor.greenColor()

//设置字体颜色
label.textColor = UIColor.redColor()

//设置字体大小
label.font = UIFont.systemFontOfSize(16)//第一种
label.font = UIFont(name: "Helvetica_Bold", size: 16)//第二种

//设置文本对齐方式,默认左对齐
label.textAlignment = NSTextAlignment.Right

//设置要显示的文本
label.text = "I am a label"

//打印label的文本,因为label.text为String?,所以要加!
let labelString = label.text!

// 交互,默认是false
label.userInteractionEnabled = true

//可变,默认是true
label.enabled = false

//行数,设置为0代表无限制的意思
label.numberOfLines = 0

 //设置高亮(默认是falue),及其颜色
 label.highlighted = true
 label.highlightedTextColor = UIColor.blueColor()

3.富文本设置

//富文本设置
/**
  @param NSMakeRange(0,3) 0是起始位置,3是长度
*/
let attributeString: NSMutableAttributedString = NSMutableAttributedString(string: "超人爱睡觉看夏洛克逛博客写文章运动打球打游戏啊啊啊啊啊")

//设置字体
attributeString.addAttribute(NSFontAttributeName, value: UIFont(name: "HelveticaNeue-Bold",size: 26)!, range: NSMakeRange(0,3))

//设置字体颜色
attributeString.addAttribute(NSForegroundColorAttributeName, value: UIColor.redColor(), range: NSMakeRange(0, 3))

//设置背景颜色
attributeString.addAttribute(NSBackgroundColorAttributeName, value: UIColor.yellowColor(), range: NSMakeRange(3, 3))
artLabel.numberOfLines = 0
artLabel.attributedText = attributeString
artLabel.baselineAdjustment = .AlignCenters//没什么变化

4.自适应高度

/**
UILabel自适应高度
        
@param CGFLOAT_MAX 无限大
@param NSStringDrawingUsesLineFragmentOrigin 绘制文本使用
*/
let size = (artLabel.text! as NSString).boundingRectWithSize(CGSizeMake(100, CGFloat.max), options: NSStringDrawingOptions.UsesLineFragmentOrigin, attributes: [NSFontAttributeName : UIFont.systemFontOfSize(16)], context: nil)

artLabel.frame = CGRectMake(100, 100, size.width, size.height)
上一篇下一篇

猜你喜欢

热点阅读