E
AppDelegate: UNUserNotificationCenterDelegate {
func userNotificationCenter(
_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler:
@escaping@escaping () -> Void) {
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle:
nil)
guard
let mainVC = mainStoryboard.instantiateViewController(identifier: "ActivityViewController")
as? ActivityViewController
else { fatalError() }
let
_ = mainVC.createNewTask()
}
}
Метод контроллера:
func createNewTask() -> Task {
let currentCardIndex = getCurrentCard()
let currentActivity = ActivityData.activities[currentCardIndex]
let startDate = Date().timeIntervalSince1970
let endDate = startDate + duration
let task = Task(activity: currentActivity, isDone:
false, startDate: startDate, endDate: endDate)
realm.save(task)
task.scheduleNotification()
updateNextNotificationLabel(with: endDate)
let indexPath = IndexPath(row: 0, section: 0)
tableView.insertRows(at: [indexPath], with: .bottom)
return task
}