将 FetchedRequest/Core 数据中的 Date() 加载到日期选择器 SwiftUI

Load Date() from FetchedRequest/Core Data into Date Picker SwiftUI

我像这样将 CoreData 加载到我的视图中:

@FetchRequest(entity: Rechnungen.entity(), sortDescriptors: []
)var rechnung: FetchedResults<Rechnungen>

考虑到我只对一个特定的实体感兴趣,我应用了这个过滤器(只显示一个具有正确 UUID 的实体)

ForEach(self.rechnung.filter{
        [=12=].id == rechnungoffen}) { rechnung in

这很好用,因为这些 TextField 显示了正确的输出

Form {
        Section(header: Text("Rechnungsdetails")) {
            TextField("\(rechnung.verkaeufer)", text:$verkaeufer)
            TextField("\(rechnung.beschreibung)", text:$beschreibung)

现在我想显示日期,这就是我卡住的地方,因为这不起作用,我真的不知道为什么

                DatePicker(selection: $datum, in: ...Date()){
                                Text("Datum & Uhrzeit")
                                    .onAppear{
                                        self.datum = rechnung.datum
                                    }

变量“datum”(Type Date(),也设置为@State)是否应该更改为 rechnung.datum(Type Date())设置的值?因此显示日期...

遗憾的是,SwiftUI 的文档仍然很差,但也许我在这里遗漏了一些重要的东西

将选择器代码更改为:

DatePicker(selection: $datum, in: datum...Date()) {
    Text("Datum & Uhrzeit")
        .onAppear{
            self.datum = rechnung.datum
    }
}

来源:https://developer.apple.com/documentation/swiftui/datepicker

好吧我自己解决了问题,我把Picker代码改成了:

DatePicker("Datum & Uhrzeit", selection: $datum, in: datum...Date())
                    .onAppear{
                        datum = rechnung.datum
                    }

现在可以用了,天知道为什么!