iOS -Swift 3.0 -UILabel属性大全

 

昨天研究了一下苹果近两年新出的Swift语言,感觉学起来并不是很吃力,毕竟自己有过Objective-C的语言功底,所以各方面的属性控件还是一眼就可以认出的,只是Swift的写法与Objective-C写法不同而已,这点还是要花点时间来习惯就好了,下面来看Swift的UILabel的相关属性与写法吧:

   注意:刚开始初始化的时候,有语法报错,不必理会,接着往下写就好了

 

//

 

//  ViewController.swift

 

//  Swift-UILabel

 

//

 

//  Created by luorende on 16/9/9.

 

//  Copyright © 2016年 luorende. All rights reserved.

 

//

 

 

 

import UIKit

 

 

 

class ViewController: UIViewController {

 

 

 

    override func viewDidLoad() {

 

        super.viewDidLoad()

 

 

 

        //设置标签x坐标:10,y坐标:20,长:300,宽:100

 

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

 

        //    显示文本【需要显示什么就设置这个 text 的属性即可】

 

        label.text=" Welcome to study Swift !"

 

        // label的字体颜色

 

        label.textColor=UIColor.redColor() //红色文字

 

        // label的背景颜色

 

        label.backgroundColor=UIColor.blackColor() //黑色背景

 

        // label的文字对齐方式

 

        /**

 

          case Left(左对齐)

 

          case Center(居中)

 

          case Right(右对齐)

 

         */

 

        label.textAlignment=NSTextAlignment.Right //文字右对齐

 

        

 

        //    label阴影颜色【要设置偏移位置】(字体的阴影颜色)

 

        label.shadowColor=UIColor.grayColor()  //灰色阴影

 

        

 

        //    label阴影偏移位置

 

        label.shadowOffset=CGSizeMake(-5,5)   //阴影的偏移量

 

        

 

        //    多行显示,默认是一行的,0表示的多行显示(与高度有关)Label自适应自动换行

 

        label.numberOfLines=0   //显示两行文字(默认只显示一行,设为0表示没有行数限制)

 

 

 

        //    自适应(不建议使用)

 

            /*

 

              1、没有设置多行显示:宽度自适应

 

              2、设置有多行显示:高度使用

 

              */

 

        // 文本有多大,窗口有多大

 

        // 细节: 不管高度宽度是否足够,都显示相应的高度

 

        // 细节: numberOfLines为1,那么就是单行显示

 

        label.adjustsFontSizeToFitWidth=true //当文字超出标签宽度时,自动调整文字大小,使其不被截断

 

 

 

        //设置label文本高亮

 

        label.highlighted = true

 

        //设置label文本高亮颜色

 

        label.highlightedTextColor = UIColor.greenColor()

 

 

 

        //    label圆角属性

 

        label.layer.masksToBounds = true;

 

        //    label圆角半径

 

        label.layer.cornerRadius = 10;

 

        //    label圆角边框颜色

 

        label.layer.borderColor = UIColor.blueColor().CGColor;

 

        //    label圆角边框宽度

 

        label.layer.borderWidth = 1;

 

        //  label的字体大小

 

        /**

 

         systemFontOfSize(20) -> UIFont         (文字大小)

 

         boldSystemFontOfSize(20) -> UIFont     (加粗类型)

 

        italicSystemFontOfSize(20) -> UIFont    (斜体类型)

 

         */

 

        label.font = UIFont.systemFontOfSize(50)

 

        // 设置字体时,同时设置大小

 

        label.font = UIFont(name:"您好!", size:50)

 

        

 

        // label的特殊属性

 

        /**

 

         case ByWordWrapping // Wrap at word boundaries, default

 

         case ByCharWrapping // Wrap at character boundaries

 

         case ByClipping // Simply clip

 

         case ByTruncatingHead // Truncate at head of line: "...wxyz"

 

         case ByTruncatingTail // Truncate at tail of line: "abcd..."

 

         case ByTruncatingMiddle // Truncate middle of line:  "ab...yz"

 

         */

 

        label.lineBreakMode=NSLineBreakMode.ByTruncatingTail  //隐藏尾部并显示省略号

 

        label.lineBreakMode=NSLineBreakMode.ByTruncatingMiddle  //隐藏中间部分并显示省略号

 

        label.lineBreakMode=NSLineBreakMode.ByTruncatingHead  //隐藏头部并显示省略号

 

        label.lineBreakMode=NSLineBreakMode.ByClipping //截去多余部分也不显示省略号

 

 

 

 

   //    将视图添加到(self.view-->父视图)界面中;  

 

        self.view.addSubview(label);

 

 

 

        

 

        //富文本设置

 

        let attributeString = 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.blueColor(),range: NSMakeRange(0, 3))

 

        //设置文字背景颜色

 

        attributeString.addAttribute(NSBackgroundColorAttributeName, value: UIColor.greenColor(),range: NSMakeRange(3,3))

 

        label.attributedText = attributeString

 

  

 

    }

 

 

 

    override func didReceiveMemoryWarning() {

 

        super.didReceiveMemoryWarning()

 

        // Dispose of any resources that can be recreated.

 

    }



}

 

 

posted @   brave-sailor  阅读(439)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
历史上的今天:
2016-02-28 Android 4.2蓝牙介绍
2015-02-28 Attempt to call getDuration without a valid mediaplayer
2015-02-28 Mac环境下svn的使用
2015-02-28 MediaController
2014-02-28 Android进阶2之APK方式换肤
2014-02-28 Android APK方式换肤实现原理
点击右上角即可分享
微信分享提示