我正在製作一個應用程序而不使用故事板。該應用有很長的文字,所以我無法在一行上獲得足夠的空間。該應用程序適用於iPad和iPhone。 adjustSizeToFit = true
不起作用,是否有一個用多行調整標籤大小的metode?多行自動縮水標籤Swift
回答
UILabel
沒有財產adjustSizeToFit
。你確定你的意思不是adjustsFontSizeToFitWidth
?如果你看文檔,說:
通常情況下,標籤文本是用您在font屬性中指定的字體繪製的。但是,如果此屬性設置爲true,並且text屬性中的文本超出了標籤的邊界矩形,接收器將開始縮小字體大小,直到字符串適合或達到最小字體大小。在iOS 6及更早版本中,只有當numberOfLines屬性設置爲1時,此屬性纔有效。
我不確定是你想要的。
如果你想要一個UILabel
用線的任意數字,其中的文本包含在一定寬度內,繼續閱讀:
您做些什麼,將取決於您是否使用自動版式與否:
不自動版式
只需使用:
let size = label.sizeThatFits(CGSize(width: myWidth, height: CGFloat.max))
// CGFloat.max, because we don't want to limit the UILabel's height.
label.frame.size = size
AutoLayout
首先,您應該將numberOfLines
設置爲零。其次,你需要告訴AutoLayout每行可以有多長,這個不是默認爲標籤的寬度。爲此,您需要一個UILabel
子類:
class myLabel : UILabel {
override func layoutSubviews() {
// 1. Get the label to set its frame correctly:
super.layoutSubviews()
// 2. Now the frame is set we can get the correct width
// and set it to the preferredMaxLayoutWidth.
self.preferredMaxLayoutWidth = self.frame.width
}
}
我正在編程按鈕。我如何將它連接到課堂上? – vladasha 2015-04-07 13:54:25
你原來的問題中沒有提到任何按鈕。我會建議要麼創建一個新的問題,要麼有大量的資源在線。希望有所幫助。 – ABakerSmith 2015-04-07 15:46:56
它沒有出現像SKLabel的等價物? – Crashalot 2015-05-17 05:45:01
- 1. Graphviz中的自動多行標籤?
- 2. iOS 8標籤自動收縮
- 3. 在多行上縮進HTML標籤
- 4. 水平滾動標籤
- 5. 「pre」標籤不縮小。不顯示水平滾動條
- 6. 多行標籤
- 7. 多行標籤
- 8. 自定義的UITableViewCell多行標籤
- 9. 自舉3水平雙線標籤
- 10. 多行的EditText縮水時集中
- 11. QWebView自動標籤
- 12. Swift自定義UIViewController的標籤爲零
- 13. Flex 4中的標籤自動換行
- 14. cocos2dJs多行標籤
- 15. 多行標籤OpenLayers3
- 16. 自動佈局限制設置標籤水平
- 17. Codeigniter水印自動換行
- 18. Kivy:GridLayout中的水平可滾動標籤
- 19. Jquery水平滑動標籤機制
- 20. QML:水平滾動標籤欄
- 21. 自舉表單 - 標籤和輸入水平在同一行
- 22. 基於水平標籤的滾動標籤菜單
- 23. 用水貂操作標籤標籤
- 24. 在iOS中進行自定義選定的標籤欄項Swift
- 25. 基於文件類型的自動硬與軟標籤縮進?
- 26. Swift 3標籤欄禁用標籤
- 27. Swift:水平滾動UITextView
- 28. jQuery中li標籤的動態縮進
- 29. Vim自動縮進換行
- 30. 動態創建的swift 3/xcode標籤中的行間距
您能詳細解釋一下您的問題嗎?我不太清楚你想要什麼幫助。你有一個寬度,你也指定了行數。你到底在做什麼,你需要幫助? – MLyck 2015-04-04 06:29:25
不清楚你在問什麼。 – Arbitur 2015-04-04 09:00:14