SwiftUI中如何实现不同字号Text元素的同基线对齐?
SwiftUI 实现不同字号Text的基线对齐
直接用SwiftUI原生的文本基线对齐参数就能解决,不用搞复杂的布局调整:
把HStack的对齐方式改成.firstTextBaseline(单行文本用这个最合适),代码如下:
HStack(alignment: .firstTextBaseline) { Text("100").font(.largeTitle) Text("kg") }
如果是多行文本场景,你可以换成.lastTextBaseline来对齐最后一行的基线。
这个方案比.bottom精准得多,因为它是基于字体本身的基线对齐,而不是视图的底部边界,完全符合你要的“如同同一行文本般对齐”的效果,属于最优雅的原生实现方式。
内容的提问来源于stack exchange,提问作者sak
相关产品推荐
相关产品推荐

