我创建了一个Bindable
具有两个属性的 SwiftUI 类,例如
public class Clock: BindableObject {
public let didChange = PassthroughSubject<Clock, Never>()
public var time: Date = Date() {
didSet { didChange.send(self) }
}
public var useMilitaryTime = false {
didSet { didChange.send(self) }
}
}
这完全符合预期。但是当我尝试添加具有自定义类型的属性(作为结构、类或元组)时,它无法编译:
public var sunriseSunset = (Date(), Date()) {
didSet { didChange(self) }
}
说我“不能调用非函数类型'PassthroughSubject'的值”。如果我尝试,它也会以同样的方式失败
public var sunriseSunset: (Date, Date)? = nil {
didSet { didChange(self) }
}
诊断按钮无用;它只是说它“无法建立活动模式”。
哪些类型可以用作Bindable
类的属性?