如何在iPhone中删除本地通知
我正在制作一个设置本地通知的应用程序 谢天谢地,我能够设置本地通知,但我不知道如何删除应用程序设置的通知 XCode确实提供了删除如何在iPhone中删除本地通知,iphone,Iphone,我正在制作一个设置本地通知的应用程序 谢天谢地,我能够设置本地通知,但我不知道如何删除应用程序设置的通知 XCode确实提供了删除removeAllNotifications的功能,但您不能删除应用程序设置的特定通知 非常感谢 这个问题你问了两次,所以我现在回答这两个问题,希望你能理解: [[UIApplication sharedApplication] cancelLocalNotification:notification] 使用以下代码取消所有本地通知: [[UIApplication
removeAllNotifications
的功能,但您不能删除应用程序设置的特定通知
非常感谢 这个问题你问了两次,所以我现在回答这两个问题,希望你能理解:
[[UIApplication sharedApplication] cancelLocalNotification:notification]
使用以下代码取消所有本地通知:
[[UIApplication sharedApplication] cancelAllLocalNotifications];
使用以下代码行取消一个本地通知:
[[UIApplication sharedApplication] cancelLocalNotification:theNotification];
其中,notification
是一个UILocalNotification
对象,因此为了取消特定通知,您需要保留它的UILocalNotification
您可以在中找到更多信息。您可以通过以下功能取消通知:
[[UIApplication sharedApplication]cancelNotification:UILocalNotification的对象]
您好,您可以在swift中创建本地通知:
var notif = UILocalNotification()
notif.timeZone = NSTimeZone.defaultTimeZone()
let morningOfChristmasComponents = NSDateComponents()
morningOfChristmasComponents.year = 2016
morningOfChristmasComponents.month = 03
morningOfChristmasComponents.day = 30
morningOfChristmasComponents.hour = 15
morningOfChristmasComponents.minute = 59
morningOfChristmasComponents.second = 0
let morningOfChristmas = NSCalendar.currentCalendar().dateFromComponents(morningOfChristmasComponents)!
let formatter = NSDateFormatter()
formatter.dateStyle = NSDateFormatterStyle.LongStyle
formatter.timeStyle = .MediumStyle
let dateString = formatter.stringFromDate(morningOfChristmas)
notif.fireDate = morningOfChristmas
notif.alertBody = "alarma wolf"
notif.userInfo = ["identificador": "wolf"]
UIApplication.sharedApplication().scheduleLocalNotification(notif)
print("alarma fijada para \(dateString)")
loo用户信息是本地通知的索引,现在,如果要删除特定的本地通知操作,请尝试:
var uidtodelete = "wolf"
var app:UIApplication = UIApplication.sharedApplication()
for oneEvent in app.scheduledLocalNotifications! {
var notification = oneEvent as UILocalNotification
let userInfoCurrent = notification.userInfo! as! [String:AnyObject]
let uid = userInfoCurrent["identificador"]! as! String
if uid == uidtodelete {
//Cancelling local notification
app.cancelLocalNotification(notification)
break;
}
}
看看上面的方法,userInfoCurrent是您的本地通知的标识符,UiteDelete是一个字符串,其中包含要删除的locla通知的特定键
啊。。。如果要删除所有本地通知,可以使用
UIApplication.sharedApplication().cancelAllLocalNotifications()
奥基
我希望你能为自己或其他人提供这些信息
再见,请原谅我的英语不好Hi Thomas,您将在哪里保存或获取通知对象?如果您不想取消所有通知,您必须将您可能要取消的NSNotification保存在内存中的某个位置。可能是一个包含NSNotifications数组的适当类的属性。thomas,我通过序列化UILocalNotification对象找到了答案。不过,这并没有在应用程序图标上去掉带圆圈的1。有办法把这个拿出来吗?看看这个: