Swift - Label

Swift - Label 首页 / iOS入门教程 / Swift - Label

UILabel继承了UIView类。它代表一类视图,可显示一行或多行只读文本。在iOS应用程序中,该标签与UIControls关联使用以满足应用程序要求。

UILabel类的语法如下。

class UILabel : UIView

标签的外观可以配置。无涯教程可以自定义标签中的子字符串。标签也可以显示属性字符串。无涯教程可以通过编程方式或使用Storyboard将标签添加到界面中。以下步骤用于将标签添加到接口。

  1. 在对象库中搜索标签,然后将结果拖到Storyboard中,或在ViewController类中创建UILabel类的对象。
  2. 使用属性检查器配置标签的外观。
  3. 设置自动布局规则,以定义界面中标签的大小和位置。

UILabel构建属性

sn属性描述
1Text可以赋予该属性以设置标签的内容。为了定义标签的外观,无涯教程可以为标签分配两种模式,即普通模式(Plain)和属性(attributed)模式。普通模式以统一的外观显示标签的内容,而归属模式在字符串中应用样式属性。在属性模式下,无涯教程可以使用更多菜单显示其他外观属性。可以在运行时使用text和attributedText属性访问此值。
2Color用于设置标签的字体颜色。在普通模式下,颜色是为整个内容设置的,而在属性模式下,无涯教程可以为内容的特定颜色。
3Font这用于更改标签内容的字体。它包括字体系列,大小和内容的不透明度。无涯教程可以为标签定义系统或自定义字体。在自定义字体中,无涯教程可以设置标签内容的字体系列和样式。
4Alignment它用于设置框架内标签内容的对齐方式。无涯教程可以将标签内容,左对齐,居中,右对齐,对齐或自然放置在框架中。普通模式下,将为整个标签内容设置对齐方式,而在属性模式下,无涯教程可以为标签的特定段落保持特定的对齐方式。
5Lines它表示标签用于呈现内容的最大行数。无涯教程可以将其设置为0以使标签呈现无限制的行。可以在标签对象上使用numberOfLines属性访问运行时访问此值。
6Behavior此属性用于控制标签的行为,显示可控制标签的外观。可以分别在运行时通过使用isEnabled和isHighlighted属性来访问。
7Baseline当启用自动收缩函数时,它是一个间距属性,用于控制标签的垂直对齐方式。可以通过使用baselineAdjustment属性来访问此值。
8 Linebreaks当内容太大而无法在标签范围内调整时,它指定标签的行为。可以将其设置为自动换行或字符换行,以按单词或字符将内容分成多行。可以使用标签对象上的lineBreakMode属性访问此属性。
9 AutoshRink此属性用于在采用截断方式之前更改标签内容的字体大小。可以将其设置为最小字体比例或最大字体尺寸。无涯教程可以选择最小字体比例,并设置值以允许标签缩小字体大小以适合文本。
10Highlighted选中显示的属性后,颜色将应用到标签中的文本。
11Shadow此属性的默认值是透明的,这意味着在文本下方没有阴影。但是,无涯教程可以提及在标签文本下方呈现的阴影颜色。可以在运行时使用shadowColor属性访问此值。
12ShadowOffset此属性维护阴影偏移量。可以在运行时使用shadowOffset属性访问此值。

例子

在此示例中,无涯教程将使用界面构建器将标签添加到ViewController,并通过在ViewController类中创建标签出口来在运行时自定义标签外观。

要创建插座,请在要为其创建插座的用户界面中选择控件,按住控件键并将其从控件拖动到关联的类,如下图所示。

链接:https://www.learnfk.comhttps://www.learnfk.com/ios/ios-label.html

来源:LearnFk无涯教程网

iOS Label

在ViewController类中,无涯教程将为标签设置一些属性以在运行时自定义其外观。

ViewController.swift

import UIKit

class ViewController: UIViewController {
  
    @IBOutlet weak var textLbl: UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
       //加载视图后进行任何其他设置。
        textLbl.text = "Hello World"
        textLbl.font = .italicSystemFont(ofSize: 30)
        textLbl.backgroundColor = UIColor.blue
        textLbl.textAlignment = .center
        textLbl.textColor = UIColor.white
        textLbl.shadowColor = UIColor.black
        textLbl.isHighlighted = true
    }
}

输出:

iOS Label

例子2

使标签可点击 -  以下示例将使在示例1中创建的标签Tappable。为此,无涯教程将创建类UITapbesturerEdizer的对象。

import UIKit

class ViewController: UIViewController {
    
    @IBOutlet weak var textLbl: UILabel!
    var didTap = true
    
    override func viewDidLoad() {
        super.viewDidLoad()
       //加载视图后进行任何其他设置。
        textLbl.text = "Hello World"
        textLbl.font = .italicSystemFont(ofSize: 30)
        textLbl.backgroundColor = UIColor.blue
        textLbl.textAlignment = .center
        textLbl.textColor = UIColor.white
        textLbl.shadowColor = UIColor.black
        textLbl.isHighlighted = true
        let tap = UITapGestureRecognizer(target: self, action: #selector(didTextLabelTap(sender:)))
        textLbl.isUserInteractionEnabled = true
        textLbl.addGestureRecognizer(tap)
    }
    
    @objc func didTextLabelTap(sender: UITapGestureRecognizer){
        if(didTap){
        textLbl.backgroundColor = UIColor.brown
        didTap = false
        }
        else{
            textLbl.backgroundColor = UIColor.blue
            didTap = true
        }
        
    }
}

输出:

iOS Label

UiLabel属性

UILabel对象包含以下属性,这些属性可用于自定义标签的运行时行为。

无涯教程网

sn属性类型描述
1textString它表示当前标签文本。
2 attributedTextNSAttributedString表示当前的样式标签文本。
3fontUIFont表示颜色的字体。
4textColorUIColor它是标签文本颜色。
5 textAlignmentNSTextAlignment它是标签框架内文本的对齐方式。
6 lineBreakModeNSLineBreakMode这是用于包装(wrap)和截断(truncate)多行文本的技术
7 isEnabledBool在绘制标签文本时要使用的已启用状态。
8adjustFontSizeToFitWidthBool布尔值,设置该值时,会使标签字体大小减小以适合标题字符串。
9allowsDefaultTighteningForTruncationBool布尔值,指示标签在截断之前是否拉紧了文本。
10baseLineAdjustmentUIBaseLineAdjustment它控制当文本缩小以适合标签框架时调整基线的方式。
11minimumScaleFactorCGFloat它是标签文本的最小比例因子。
12numberOfLinesInt表示标签文本可以具有的最大行数。将其设置为0以使其无限制。
13highlightedTextColorUIColor它表示应用于标签的突出显示文本颜色。
14 isHighlightedBool它表示一个布尔值,指示标签文本是否突出显示。
15shadowColorUIColor它表示标签文本的阴影颜色。
16shadowOffsetCGSize它表示标签文本的阴影偏移量。
17preferredMaxLayoutWidthCGFloat是多行标签的首选最大宽度。
18isUserInteractionEnabledBool布尔类型。设置为true时,它使用户可以与标签文本进行交互。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

React实战进阶45讲 -〔王沛〕

Android开发高手课 -〔张绍文〕

Python核心技术与实战 -〔景霄〕

雷蓓蓓的项目管理实战课 -〔雷蓓蓓〕

JavaScript核心原理解析 -〔周爱民〕

罗剑锋的C++实战笔记 -〔罗剑锋〕

说透低代码 -〔陈旭〕

高并发系统实战课 -〔徐长龙〕

深入拆解消息队列47讲 -〔许文强〕

好记忆不如烂笔头。留下您的足迹吧 :)