SwiftUI DatePicker 不作为预期

问题描述

我需要显示两个日期,如屏幕截图 fromDatetoDate 中所示。从屏幕上显示日期的第一个组件中选择日期后,我遇到了一些 UI 问题 Jul 1,2021,但在从第二个日期选择器中选择日期后,其格式自动更改为 7/31/2021

  1. 我不明白为什么要更改格式。
  2. 我想在提交格式为 2021-07-25 的按钮后将日期发送到服务器
  3. 布局也没有按预期工作。
class viewmodel: ObservableObject {
    @Published var fromDate = Date()
    @Published var toDate = Date()
}

struct ContentView: View {
    @State var fromDate = Date()
    @State var toDate = Date()

    @Observedobject var viewmodel = viewmodel()
    
    var body: some View {
        vstack {
            HStack {
                vstack {
                    Text("From Date").padding(.horizontal).frame(maxWidth: .infinity,alignment: .leading)
                    DatePicker("",selection: $viewmodel.fromDate,displayedComponents: [.date])
                        .labelsHidden()
                        .fixedSize().frame(maxWidth: .infinity,alignment: .leading)
                }
                vstack {
                    Text("To Date").padding(.horizontal).frame(maxWidth: .infinity,selection: $viewmodel.toDate,alignment: .leading)
                }
                
            }.padding()
            Button(action: {
                print("\(viewmodel.fromDate),\(viewmodel.toDate)")
                //Todo: expected formate is 2021-02-25
            },label: {
                Text("Submit")
            })
        }
    }
}

Screenshot

Screenshot is shown below

提前致谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)