0
毎日繰り返されるときにローカル通知のメッセージを更新する方法を調べようとしています。iOS 10で毎日のローカル通知メッセージを更新するにはどうすればよいですか?
現在、私は私のAppDelegateに次のコードを持っている:
func scheduler(at date: Date, numOfNotes: Int)
{
let calendar = Calendar(identifier: .gregorian)
let components = calendar.dateComponents(in: .current, from: date)
let newComponents = DateComponents(calendar: calendar, timeZone: .current, hour: components.hour, minute: components.minute)
let trigger = UNCalendarNotificationTrigger(dateMatching: newComponents, repeats: true)
content.badge = numOfNotes as NSNumber
content.body = "REMINDER: " + String(numOfNotes) + " needs to be looked at!"
content.sound = UNNotificationSound.default()
let request = UNNotificationRequest(identifier: "reminderNotification", content: content, trigger: trigger)
UNUserNotificationCenter.current().delegate = self
UNUserNotificationCenter.current().add(request) {(error) in
}
}
私はUserDefaults
でnumOfNotes
を格納しています。指定した時刻に毎日通知リピートを持つようにtrue
にrepeats
パラメータを設定する場合は、しかし、
func remindMeSwitch(_ remindMeSwitch: UISwitch)
{
numOfNotes = UserDefaults.standard.integer(forKey: "Notes")
let delegate = UIApplication.shared.delegate as? AppDelegate
delegate?.scheduler(at: time, numOfNotes: numOfNotes)
}
numOfNotes
はわずかです:私はそうのような呼び出しscheduler
機能オンされると、私のUITableViewCell
でUISwitch
、それを持っています私はUISwitch
をトグルしています。
通知を毎日警告するように設定することはできますが、必要に応じて通知メッセージを引き続き更新するにはどうすればよいですか。
ありがとうございました。
あなたがこれを達成するために適切なメッセージで個々の非繰り返し通知をスケジュールする必要があるだろうと思われます。 – Losiowaty
@ Losiowaty、私はそれが当てはまると思うだろうが、私はカウントを変更するたびに再スケジュールする必要はないと考えていた。 – Pangu
通知サービスのアプリケーション拡張を追加することはできますが、ローカル通知。また、iOS 10からのみ利用可能です。 – Losiowaty