尺寸適合
假設你的 storyboard
上有一個 UILabel
,你在 ViewController.swift
/ ViewController.m
中建立了一個 IBOutlet
並命名為 labelOne
。
要使更改易於顯示,請在 viewDidLoad
方法中更改 labelOne 的 backgroundColor
和 textColor
:
當你想根據儲存在其中的內容自動調整標籤大小時,使用 sizeToFit
功能。
迅速
labelOne.backgroundColor = UIColor.blueColor()
labelOne.textColor = UIColor.whiteColor()
labelOne.text = "Hello, World!"
labelOne.sizeToFit()
Swift 3
labelOne.backgroundColor = UIColor.blue
labelOne.textColor = UIColor.white
labelOne.text = "Hello, World!"
labelOne.sizeToFit()
Objective-C
labelOne.backgroundColor = [UIColor blueColor];
labelOne.textColor = [UIColor whiteColor];
labelOne.text = @"Hello, World!";
[labelOne sizeToFit];
上面程式碼的輸出是:
正如你所看到的,沒有任何變化,因為文字非常適合 labelOne。sizeToFit 僅更改標籤的框架。
讓我們將文字更改為稍長的文字:
labelOne.text = "Hello, World! I’m glad to be alive!"
現在,labelOne 看起來像這樣:
即使呼叫 sizeToFit
也不會改變任何東西。這是因為預設情況下,UILabel 顯示的 numberOfLines 設定為 1.讓我們在故事板上將其更改為零:
這次,當我們執行應用程式時,labelOne 正確顯示:
numberOfLines
屬性也可以在 ViewController
檔案中更改:
// Objective-C
labelOne.numberOfLines = 0;
// Swift
labelOne.numberOfLines = 0