我的UILocalNotification有问题。
我正在用我的方法安排通知。
- (void) sendNewNoteLocalReminder:(NSDate *)date alrt:(NSString *)title
{
// some code ...
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
return;
localNotif.fireDate = itemDate;
localNotif.timeZone = [NSTimeZone defaultTimeZone];
localNotif.alertAction = NSLocalizedString(@"View Details", nil);
localNotif.alertBody = title;
localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.applicationIconBadgeNumber = 0;
NSDictionary *infoDict = [NSDictionary dictionaryWithObject:stringID forKey:@"id"];
localNotif.userInfo = infoDict;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
[localNotif release];
}
它的工作正常,我已正确收到通知。问题是我何时应该取消通知。我正在使用这种方法。
- (void) deleteNewNoteLocalReminder:(NSString*) reminderID noteIDe:(NSInteger)noteIDE
{
[[UIApplication sharedApplication] cancelLocalNotification:(UILocalNotification *)notification ????
}
我不确定在这里做什么,但我的问题是:
我怎么知道应该删除哪个UILocalNotification对象?
有没有办法列出所有通知?
我唯一拥有的是应该删除其提醒的ID。
我正在考虑将UILocalNotification对象保存在“Note”对象中并以这种方式获取,当我将其保存到SQLite数据库中时,将该对象序列化,依此类推……是否有更聪明的方法?
最佳答案
swift 5:
UNUserNotificationCenter.current().removePendingNotificationRequests(withIdentifiers: arrayContainingIdentifiers)
关于iphone - 取消UILocalNotification,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3158264/