【问题标题】:Center DatePicker Vertically within Form SwiftUI在表单 SwiftUI 中垂直居中 DatePicker
【发布时间】:2021-11-24 03:08:15
【问题描述】:

有没有办法让这个日期选择器垂直居中?如果我们放弃 Form(并使用 VStack 和 Spacers),这显然是可能的,但作为约束,请尽量保留该表单。或者,如果您需要摆脱表单,我更喜欢一种方法来保持表单生成的相同灰色背景颜色。我碰巧喜欢表单作为背景生成的确切的灰色阴影。

示例代码:

struct TestDate: View {
    @State var chosenDate = Date()

    var body: some View {
        Form {
            DatePicker("Date", selection: $chosenDate, in: Date()..., displayedComponents: [.hourAndMinute, .date])
            .datePickerStyle(GraphicalDatePickerStyle())
        }
    }
}

编辑:

我尝试在表格周围放置垫片并将垫片放在表格内(都在 VStack 内)。我还检查了Form 是否有任何可以在init 上更改的参数,但与VStackHStack 不同,Form 上似乎没有任何对齐或间距参数。仅限content:

【问题讨论】:

  • 你试过什么?你的代码的哪一部分不会产生你想要的东西。这里不仅仅是请求为您编写代码的地方。
  • 公平点,将编辑问题

标签: forms swiftui datepicker


【解决方案1】:

你可以试试这样的:

struct TestDate: View {
    @State var chosenDate = Date()

    var body: some View {
        ZStack {
            Color(red: 236/255, green: 236/255, blue: 236/255, opacity: 1).ignoresSafeArea(.all)
            VStack {
                Spacer()
                DatePicker("Date", selection: $chosenDate, in: Date()..., displayedComponents: [.hourAndMinute, .date])
                    .datePickerStyle(GraphicalDatePickerStyle())
                    .background(Color.white)
                    .cornerRadius(15)
                    .padding(10)
                Spacer()
            }
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-25
    • 2020-01-05
    • 1970-01-01
    • 2017-12-13
    • 2021-07-08
    • 1970-01-01
    • 2015-07-10
    • 2011-01-11
    相关资源
    最近更新 更多