Я недавно выбрал программирование как хобби, и недавно я в свободное время работал над приложением, чтобы посылать мне напоминания для выполнения определенных задач в течение дня.Я использовал видео на Youtube, чтобы составить общее представление о том, что я хочу, чтобы мое приложение делало, однако есть одна небольшая проблема, с которой я продолжаю сталкиваться.Я не могу найти способ настроить расписание UIDatePicker на определенное время для уведомлений.Если бы кто-нибудь мог указать мне правильное направление, я был бы очень признателен.
Я пытался найти замену временному интервалу, чтобы он связывался со значением средства выбора даты.Я понятия не имею, если это правильная идея или нет.Я искал по всему Интернету помощь, и по какой-то причине, похоже, не было никаких учебных пособий или чего-то подобного по этой теме, что кажется странным, поскольку я представляю, что использование средства выбора даты для уведомлений кажется обычной функцией в большинствеприложения на основе будильника / напоминания.
// trigger
let date = Date().addingTimeInterval(5)
let dateComponents = Calendar.current.dateComponents([.year, .month, .day, .hour, .minute, .second], from: date)
let trigger = UNCalendarNotificationTrigger(dateMatching: dateComponents, repeats: false)
datePicker = UIDatePicker()
datePicker?.datePickerMode = .dateAndTime
datePicker?.addTarget(self, action: #selector(ViewController.dateChanged(datePicker:)), for: .valueChanged)
_ = UITapGestureRecognizer(target: self
, action: #selector(ViewController.viewTapped(gestureRecognizer:)))
inputTextField.inputView = datePicker
// Do any additional setup after loading the view.
}
@objc func viewTapped(gestureRecognizer: UITapGestureRecognizer) {
view.endEditing(true)
}
@objc func dateChanged(datePicker: UIDatePicker) {
let timeFormatter = DateFormatter()
timeFormatter.dateFormat = "MMM d, h:mm a"
inputTextField.text = timeFormatter.string(from:datePicker.date)
view.endEditing(true)
}