我在视图中有一个日期选择器,一旦用户输入日期并保存,我就会显示一个带有切换的新视图。理想情况下,一旦用户翻转切换,我希望能够使用已输入的日期字段设置提醒。我创建了一个 ObservableObject
import SwiftUI
import Combine
class UpdateVM: ObservableObject{
@Published var reminderDate = Date() {didSet {
print("set")
}
我在视图中声明为:
@ObservedObject var updateVM = UpdateVM()
if(self.isToggle){
updateVM.reminderDate = flossTheCat.reminderDate!
}
我收到一个错误“类型‘()’不能符合‘视图’;只有结构/枚举/类类型可以符合协议”
这在按钮按下的操作区域中工作正常,但我看不出是否可以对切换翻转做出反应 - 切换是否只是为了反映 UI 更改而设计的,我应该实现一个按钮吗?肯定很难适应 SwiftUI 范式,即使它总体上是有意义的
谢谢 !
根据请求 - 这是我希望它可以工作的地方(通过按钮)
trailing: Button(action: {
do {
let flossingReminders = FlossingPets.init(context: self.context)
self.flossingVM.reminderDate = self.flossingDate
if self.context.hasChanges {
try self.context.save()
}
}catch {
print(error)
}