1. 程式人生 > >[Xcode10 實際操作]四、常用控制元件-(5)UILabel文字標籤自定義文字樣式

[Xcode10 實際操作]四、常用控制元件-(5)UILabel文字標籤自定義文字樣式

本文將演示給標籤物件新增描邊效果,在專案資料夾上,點選滑鼠右鍵選單,

選擇【Create File】->【Cocoa Touch Class】->【Next】->

【Class】:MyLabel

【Subclass of 】:UILabel

【Language】:Swift

->【Next】->【Create】

 1 import UIKit
 2 
 3 class MyLabel: UILabel {
 4 
 5     //首先過載父類的繪圖方法,
 6     //這樣就可以從底層來定義標籤的形狀
 7     override func draw(_ rect: CGRect) {
8 // Drawing code 9 //獲取當前圖形環境的上下文 10 let context = UIGraphicsGetCurrentContext() 11 //設定在上下文中,文字的渲染模式為描邊模式 12 context?.setTextDrawingMode(CGTextDrawingMode.stroke) 13 14 //設定文字描邊的邊框寬度為2 15 context?.setLineWidth(2) 16 //設定文字描邊的頂點連線方式為圓角方式
17 context?.setLineJoin(CGLineJoin.round) 18 //設定文字的描邊顏色為白色 19 self.textColor = UIColor.white 20 //將文字的描邊資訊,繪製在指定區域內 21 super.drawText(in: rect) 22 23 //設定在上下文中,文字渲染模式為填充 24 context?.setTextDrawingMode(CGTextDrawingMode.fill) 25 //
建立一個顏色為黑色的顏色物件 26 let textColor = UIColor.black 27 //設定文字顏色為黑色 28 self.textColor = textColor 29 //將文字的填充資訊,繪製在指定區域內 30 super.drawText(in: rect) 31 } 32 }

在專案導航區,開啟檢視控制器的程式碼檔案【ViewController.swift】

現在開始新增自定義標籤,並新增到當前檢視控制器的根檢視

 1 import UIKit
 2 
 3 class ViewController: UIViewController {
 4 
 5     override func viewDidLoad() {
 6         super.viewDidLoad()
 7         // Do any additional setup after loading the view, typically from a nib.
 8         //初始化一個自定義標籤物件
 9         let label = MyLabel()
10         //設定自定義標籤的位置在(120,180),尺寸為(240,120)
11         label.frame = CGRect(x: 120, y: 180, width: 240, height: 120)
12         //設定自定義標籤的文字內容
13         label.text = "Enter >"
14         //設定自定義標籤物件的字型和大小
15         label.font = UIFont(name: "Georgia", size: 56)
16         
17         //將自定義標籤物件,新增到當前檢視控制器的根檢視
18         self.view.addSubview(label)
19         //設定檢視的背景顏色為紫色,以突出顯示標籤中的文字內容
20         self.view.backgroundColor = UIColor.purple
21     }
22 
23     override func didReceiveMemoryWarning() {
24         super.didReceiveMemoryWarning()
25         // Dispose of any resources that can be recreated.
26     }
27 }