import UIKit
classViewController:UIViewController{
let widthScreen = UIScreen.main.bounds.width
let heightScreen = UIScreen.main.bounds.height
overridefuncviewDidLoad() {
super.viewDidLoad()
//标签的使用(重点)
//标签是用来显示文字的视图
//标签是UILabel类型的对象
//手机界面上面看的见的东西都是UI的某个对象
//UILabel : UIView
// 1)基本使用:显示文字
//创建对象
letlabel1 =UILabel()
//设置frame
label1.frame=CGRect(x:40, y:100, width:100, height:40)
//设置背景颜色
label1.backgroundColor = UIColor.red
//显示文字
label1.text="你好"
//显示到界面上
self.view.addSubview(label1)
/*
a)调用addSubView方法之后,self.window和label1之间建立一个父子视图的关系
self.view叫做label1的父视图
label1是self.window的子视图
b)父子视图和父子类之间的区别
父子视图是界面上面的显示关系
父子类是代码的结构关系
c)一个视图有且只有一个父视图
一个视图可以有多个子视图
d)一个视图必须有父视图,否则它不能显示
*/
// 2)修改文字颜色
//创建UILbel对象
letlabel2 =UILabel(frame:CGRect(x:40,y:160,width:200,height:40))
//设置背景颜色
label2.backgroundColor = UIColor.yellow
//显示文字
label2.text="今天下雨"
//设置文字颜色
label2.textColor=UIColor.red
//添加到父视图
self.view.addSubview(label2)
// 3)修改字体的大小
//创建UILabel对象
letlabel3 =UILabel(frame:CGRect(x:40,y:220,width:200,height:40))
//设置文字
//label3.text = "jack"
label3.text="张三"
//修改字体
//a)默认字体大小是系统字体17
//b)系统有很多字体
/*
for fontFamily in UIFont.familyNames(){
print("family:\(fontFamily)")
//每一个字体家族都有很多不同的字体
for fontName in UIFont.fontNamesForFamilyName(fontFamily) {
print(fontName)
}
}
*/
//如果不采用系统默认的字体,而使用其他的字 对中文文字支持的不好
//实际中用的不是很多
//label3.font = UIFont(name: "MarkerFelt-Thin", size: 20)
//使用系统默认正常字体
label3.font=UIFont.systemFont(ofSize:30)
//使用系统默认加粗字体
//label3.font = UIFont.boldSystemFontOfSize(30)
self.view.addSubview(label3)
// 4)文字对齐方式
//创建UILabel对象
letlabel4 =UILabel(frame:CGRect(x:40,y:280,width:200,height:40))
//设置背景颜色
label4.backgroundColor = UIColor.red
//文字
label4.text="SWift"
// label圆角半径
label4.layer.masksToBounds=true;
label4.layer.cornerRadius=10;
//设置文字的对齐方式
//NSTextAlignment是枚举类型//Left,Center,Right
//默认是左对齐
//label4.textAlignment = NSTextAlignment.Center
label4.textAlignment= .right
//添加到父视图
self.view.addSubview(label4)
// 5)显示多行文字
//创建一个UILabel对象
letlabel5 =UILabel(frame:CGRect(x:40,y:340,width:300,height:100))
//设置背景颜色
label5.backgroundColor = UIColor.purple
//显示文字
label5.text = "前尘往事成云烟,消散在彼此眼前,就连说过了再见,也看不见你有些哀怨,给我的一些,你不过是在敷衍。"
//numberOfLines默认是1
//设置为几就显示几行,设置为0就是文字有多少行就显示多少行
label5.numberOfLines=0
//换行方式(使用的比较少,对中文支持的不好)
//label5.lineBreakMode = NSLineBreakMode.ByWordWrapping
// label.lineBreakMode=NSLineBreakMode.ByTruncatingTail //隐藏尾部并显示省略号
// label.lineBreakMode=NSLineBreakMode.ByTruncatingMiddle //隐藏中间部分并显示省略号
// label.lineBreakMode=NSLineBreakMode.ByTruncatingHead //隐藏头部并显示省略号
// label.lineBreakMode=NSLineBreakMode.ByClipping //截去多余部分也不显示省略号
self.view.addSubview(label5)
// 6)显示阴影
//创建UILabel对象
letlabel6 =UILabel(frame:CGRect(x:40,y:460,width:100,height:40))
//设置文字
label6.text="你好"
//设置阴影颜色
label6.shadowColor = UIColor.cyan
//设置阴影的偏移量
//CGSize结构体的值
label6.shadowOffset=CGSize(width:2, height:2)
self.view.addSubview(label6)
// 7)文字自适应大小
letlabel7 =UILabel(frame:CGRect(x:40,y:520,width:100,height:40))
self.view.addSubview(label7)
//设置文字
label7.text="今天天气不错,挺好的"
//自适应文字大小
label7.adjustsFontSizeToFitWidth = true
// 8)富文本设置
letattributeString =NSMutableAttributedString(string:"Welcome to study Swift !")
//从文本0开始6个字符字体HelveticaNeue-Bold,16号字体大小
attributeString.addAttribute(NSFontAttributeName, value:UIFont(name:"HelveticaNeue-Bold", size:16)!,range:NSMakeRange(0,6))
//设置字体颜色
attributeString.addAttribute(NSForegroundColorAttributeName, value:UIColor.blue,range:NSMakeRange(0,3))
//设置文字背景颜色
attributeString.addAttribute(NSBackgroundColorAttributeName, value:UIColor.green,range:NSMakeRange(3,3))
label7.attributedText= attributeString
// 9)控件自适应内容大小
letcontentTextLabel =UILabel()
self.view.addSubview(contentTextLabel)
let contentText:NSString = "就是对雷锋精神动力大幅降低肌肤啦圣诞节放大老师家看电视了附近的伤口附近丢失哦双节快乐对方角度来说 家里的沙发经历多少附近丢失了附近丢失了几行法师看对方发 三闾大夫就是大了发动机拉萨的激发了三十分 的士力架飞机似的 附近的伤口分 风急浪大开始见风使舵两附近分 时间的浪费教室里的风景"
contentTextLabel.text= contentTextasString
contentTextLabel.numberOfLines=0
contentTextLabel.font=UIFont.systemFont(ofSize:15)
letboundRect = contentText.boundingRect(with:CGSize(width:widthScreen,height:0), options:NSStringDrawingOptions.usesLineFragmentOrigin, attributes: [NSFontAttributeName:contentTextLabel.font], context:nil)
contentTextLabel.frame=CGRect(x:20, y:570, width: boundRect.width-40, height: boundRect.height)
}
overridefuncdidReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}