5.3、UILable

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.

    }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容