我正在安排一个基于位置的UIlocalnotification,点击一个按钮.但是,当我尝试通过再次单击相同的按钮取消本地通知时,它不会取消通知.
我正在使用UIApplication.sharedApplication().cancellocalnotification(localnotification)
取消预定位置的本地通知.
我究竟做错了什么 ?
这是我的实现
我正在使用UIApplication.sharedApplication().cancellocalnotification(localnotification)
取消预定位置的本地通知.
我究竟做错了什么 ?
这是我的实现
@IBAction func setNotification(sender: UIButton!) { if sender.tag == 999 { sender.setimage(UIImage(named: "NotificationFilled")!,forState: .normal) sender.tag = 0 regionMonitor() //function where notification get scheduled } else { sender.setimage(UIImage(named: "Notification")!,forState: .normal) sender.tag = 999 }
我应该输入到其他块,以便计划的通知被取消.无法清除所有通知.
这里是didEnterRegion块代码,我触发本地通知
func locationManager(manager: CLLocationManager!,didEnterRegion region: CLRegion!) { localnotification.regionTriggersOnce = true localnotification.alertBody = "Stack Overflow is great" UIApplication.sharedApplication().schedulelocalnotification(localnotification) NSLog("Entering region") }
解决方法
如果在您的上下文中可以接受,您可以尝试删除所有通知.
喜欢这个:
喜欢这个:
for notification in UIApplication.sharedApplication().scheduledlocalnotifications as! [UIlocalnotification] { UIApplication.sharedApplication().cancellocalnotification(notification) }
或者如Logan所说:
UIApplication.sharedApplication().cancelAlllocalnotifications()