1

目前是否可以在 SwiftUI 2.0 中更改 DatePicker 的文本对齐方式?

DatePicker(selection: $birthDate, in: ...Date().stripTime(), displayedComponents: .date) {
      Text("Birthday")
}

这显示左侧的生日文本和旁边的日期选择器文本,但我希望它在右侧

4

2 回答 2

4

这是可能的解决方案。使用 Xcode 12 / iOS 14 测试

演示

DatePicker(selection: $birthDate, in: ...Date().stripTime(), displayedComponents: .date) {
      Text("Birthday").frame(maxWidth: .infinity, alignment: .trailing)
}.fixedSize().frame(maxWidth: .infinity, alignment: .trailing)

更新:

演示2

HStack {
    Text("Birthday")
    Spacer()
    DatePicker("", selection: $birthDate, in: ...Date().stripTime(), displayedComponents: .date)
        .fixedSize()
}
于 2020-07-03T03:34:14.473 回答
1

我的建议是在 VStack 中包含所需的项目,并设置对齐和间距。这使 VStack 中的所有内容保持左对齐。

我会删除 Spacer() 因为这会将第二个项目推到右边距。

    VStack (alignment: .leading, spacing: 8) {
        HStack {
            Text("Birthday")
            // some other spacer
            DatePicker("", selection: $birthDate, in: ...Date().stripTime(),displayedComponents: .date)
            .fixedSize()
        }
    }
于 2021-01-08T12:00:31.283 回答