Как мне запланировать уведомление, используя UIDatePicker? - PullRequest
0 голосов
/ 10 июня 2019

Я недавно выбрал программирование как хобби, и недавно я в свободное время работал над приложением, чтобы посылать мне напоминания для выполнения определенных задач в течение дня.Я использовал видео на 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)

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...