[英]Vertically align labels with different font sizes, Swift
我想垂直對齊具有不同字體大小的標簽,以使它們看起來位於相同的基線上。
在這種情況下,我在stackview中嵌入了三個標簽,如下圖所示。 數字30似乎與基線明顯偏離,而文字“ In”和“ MINUTES”也似乎偏離了基線,但並不明顯。 我怎樣才能使三個人都坐在同一基線上?
我正在以編程方式創建標簽和堆棧視圖,如下所示:
var timeStackView : UIStackView!
var timeIndication : UILabel!
var time : UILabel!
var unitsOrTimeZone : UILabel!
timeStackView = UIStackView()
timeStackView.addArrangedSubview(timeIndication)
timeStackView.addArrangedSubview(time)
timeStackView.addArrangedSubview(unitsOrTimeZone)
timeStackView.alignment = .bottom // bottom alignment
timeStackView.axis = .horizontal
timeStackView.distribution = .equalSpacing
timeStackView.spacing = 10.0
所有三個標簽的創建方式如下所示,但文本不同:
timeIndication = UILabel()
timeIndication.textAlignment = .center
timeIndication.text = "In"
timeIndication.font = timeIndication.font.withSize(14)
timeIndication.baselineAdjustment = .alignBaselines // baselineAdjustment
我嘗試過timeStackView.alignment = .bottom
和timeIndication.baselineAdjustment = .alignBaselines
,但是它們似乎不起作用。
我沒有嘗試過,但是根據UIStackView
文檔,您應該將堆棧視圖的對齊方式設置為.lastBaseline
或.firstBaseline
,具體取決於您希望如何處理多行標簽。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.