###前提・実現したいこと
swiftでローカル通知を実装しています。
UISwitchで通知をスケジュールして、通知を受け取ることはできたのですが、
通知受信後にアプリを再度開いた際にUISwitchをオフにすることができず困っています。
完成イメージとしては、iPhone時計アプリのアラームのような機能です。
スイッチオンで通知を設定→通知受信→アプリを開くとスイッチがオフになっている
といった感じです。
###発生している問題・エラーメッセージ
通知のアクションハンドルのところや、アプリがフォアグランドになる時の2つでUISwitch.isOn = false
を試すのですが、以下のエラーが出ます。
fatal error: unexpectedly found nil while unwrapping an Optional value
通知が届く前にアプリを開いた際は、スイッチはオンになっている必要があるので、スイッチをオフにするタイミングとしてはアクションをハンドルするタイミングがベストだと思うのですが、どうすればスイッチをオフにできるのでしょうか。
アクションハンドルのメソッドはappDelegate.swift
に書いており、appDelegate.swift
からviewController
のUISwitch
のステータスを変更しようとすると、上記のようなエラーが出てしまいます。
あなたの回答
tips
プレビュー