Моя цель - использовать Combine для запуска кода в указанное c время суток. В приведенном ниже коде я использую Combine для обновления текстового представления SwiftUI при срабатывании таймера. Я бы хотел, чтобы текстовое представление обновлялось в указанное c время суток, а не при срабатывании таймера. Я полагаю, что NotificationCenter можно использовать для этой цели, но я не совсем уверен, как это сделать, так как не хватает документации.
Можете ли вы решить эту проблему и использовать Центр уведомлений для обновления текстового представления в определенное время дня (например, 18:00)?
import SwiftUI
struct ContentView: View {
let timer = Timer.publish(every: 1, on: .main, in: .common).autoconnect()
@State private var counter = 0
var body: some View {
Text("The time is now \(counter)")
.onReceive(timer) { time in
if self.counter == 30 {
self.timer.upstream.connect().cancel()
}
self.counter += 1
}
}
}