在 ScrollView 中将文本对齐为前导 - SWIFTUI
Align text as leading in ScrollView - SWIFTUI
我有一个 ScrollView
:
ScrollView {
VStack (alignment: .leading) {
Text("\(userData.username), \(userData.age)")
.fontWeight(.semibold)
.font(Font.system(size:30))
}
}
输出为:
我尝试翻转 Stack 并将滚动视图放入其中,但我得到了相同的结果。
我的解决方法是将它放在 HStack 中并添加一个 Spacer()
HStack {
Text("\(userData.username), \(userData.age)")
.fontWeight(.semibold)
.font(Font.system(size:30))
.padding([.leading])
Spacer()
}
这确实有效,但我认为这不是理想的方法。这是唯一的方法吗?或者是否有更好的解决方案可以在滚动视图中垂直对齐文本?
默认情况下堆栈容器与内容紧密相关,因此对齐无效。
这是可能的解决方案
ScrollView {
VStack (alignment: .leading) {
Text("\(userData.username), \(userData.age)")
.fontWeight(.semibold)
.font(Font.system(size:30))
}.frame(maxWidth: .infinity, alignment: .leading) // << make screen-wide !!
}
我有一个 ScrollView
:
ScrollView {
VStack (alignment: .leading) {
Text("\(userData.username), \(userData.age)")
.fontWeight(.semibold)
.font(Font.system(size:30))
}
}
输出为:
我尝试翻转 Stack 并将滚动视图放入其中,但我得到了相同的结果。
我的解决方法是将它放在 HStack 中并添加一个 Spacer()
HStack {
Text("\(userData.username), \(userData.age)")
.fontWeight(.semibold)
.font(Font.system(size:30))
.padding([.leading])
Spacer()
}
这确实有效,但我认为这不是理想的方法。这是唯一的方法吗?或者是否有更好的解决方案可以在滚动视图中垂直对齐文本?
默认情况下堆栈容器与内容紧密相关,因此对齐无效。
这是可能的解决方案
ScrollView {
VStack (alignment: .leading) {
Text("\(userData.username), \(userData.age)")
.fontWeight(.semibold)
.font(Font.system(size:30))
}.frame(maxWidth: .infinity, alignment: .leading) // << make screen-wide !!
}