SwiftUI 和 WidgetKit - 自动更新组件

SwiftUI and WidgetKit - Automatically updating components

我正在使用 WidgetKit,我发现使用 init(Date, style: Text.DateStyle) 初始化的文本组件正在创建自动更新的文本。这很特别,因为 iOS 小部件通常需要设置关于何时更新视图的时间线。不幸的是,根据有限的预算安排这些更新是在操作系统的手中,因此是不可靠的。

您是否知道其他自动更新的 SwiftUI 视图(也可能在小部件中被动更新)?动画形状也很好。

我已经尝试过使用发布计时器,但在小部件中不起作用。

根据Apple's documentation, the only self-updating SwiftUI view is Text, configured to display a relative date or time. See Displaying Dynamic Dates in Widgets了解详情。

选项是:

Text(futureDate, style: .relative)
Text(futureDate, style: .offset)
Text(futureDate, style: .timer)
Text(aprilFirstDate, style: .date)
Text("Date: \(aprilFirstDate, style: .date)")
Text(startDate ... endDate)
Text("The meeting will take place: \(startDate ... endDate)")