IOS学习日记之UIView与视图(一)标签UILabel

语言: CN / TW / HK

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第22天,点击查看活动详情

大家好,我是小黑,一个还没秃头的程序员~~~

今天起,我们将转而分享UIView视图和控件的学习记录,SwiftUI的分享与实战源码可以阅读往期文章,我只学纯代码进行iOS开发,所以后续的文章中只会出现纯代码使用组件的介绍,不会出现故事板的使用,话不多说,正文开始: 本次介绍的是UILabel组件,作为文本标签进行使用,效果如图:

image.png

UILabel

UILable是能够显示一行或多行信息文本的视图。

你可以配置标签文本的整体外观,并使用带属性的字符串自定义文本中子字符串的外观。以编程方式或使用接口生成器中的属性检查器在接口中添加和自定义标签。

编程方式即纯代码开发 或者可以通过故事板中的属性检查器进行配置属性

按照以下步骤添加标签:

  1. 定义UILabel变量
  2. 定义位置以及宽高
  3. 定义内容以及其他样式
  4. 添加到父组件中

| 属性 | 说明 | | --- | --- | | text | 标签显示的文本 | |attributedText|标签显示的样式文本| |font|文本的字体| |textColor|文本的颜色| |textAlignment|文本的对齐方式| |lineBreakMode|换行和截断标签文本的方式| |isEnable|确定标签是否在启用状态下绘制其文本| |enablesMarqueeWhenAncestorFocused|用于确定标签是否在其中一个包含的视图具有焦点时滚动其文本|

截断文本的方式有如下几种:

| 方式 | 说明 | | --- | --- | | byWordWrapping | 换行发生在单词边界处,除非单词不能放在一行中 | |byCharWrapping|换行发生在第一个不合适的字符之前| |byClipping|行不会超过文本容器的边缘| |byTruncatingHead|省略号符号指示行开头缺少的文本| |byTruncatingTail|省略号符号指示行结尾缺少的文本| |byTruncatingMiddle|省略号符号指示行中间缺少的文本|

具体的代码如下:

let screen = UIScreen.main.bounds let labelWidth:CGFloat = 150 let labelHeight:CGFloat = 50 let labelTop:CGFloat = titleBarHeight+20 let label=UILabel(frame: CGRect(x: (screen.size.width-labelWidth)/2, y: labelTop, width: labelWidth, height: labelHeight)) label.text = "我是UILabel" label.attributedText = NSAttributedString(string: "我是样式文本") label.font = .boldSystemFont(ofSize: 25) label.textColor = .orange label.textAlignment = .center label.lineBreakMode = .byTruncatingTail self.view.addSubview(label)

以上便是IOS中关于UILabel的使用,今天的UIView学习分享就到这里,后面我会持续输出iOS开发笔记,感谢大家的阅读!共同努力!大家晚安!