iOS UILocalNotification 多个本地通知,怎么有区分的删除

iOS的本地通知是用到了OC的UILocalNotification对象,加入一个通知很简单,创建一个UILocalNotification对象设置一些对应的参数就行了。
  // 添加本地通知
  UILocalNotification *notification=[[UILocalNotification alloc] init];
if (notification!=nil)
  {
NSDate *now = [NSDate date];
  // 设置提醒时间,倒计时以秒为单位。以下是从现在开始55秒以后通知
notification.fireDate=[now dateByAddingTimeInterval:55];
  // 设置时区,使用本地时区
notification.timeZone=[NSTimeZone defaultTimeZone];
  // 设置提示的文字
notification.alertBody=@”时间到了,洗洗睡吧”;
  // 设置提示音,使用默认的
notification.soundName= UILocalNotificationDefaultSoundName;
  // 锁屏后提示文字,一般来说,都会设置与alertBody一样
notification.alertAction=NSLocalizedString(@”锁屏了,洗洗睡吧”, nil);
  // 这个通知到时间时,你的应用程序右上角显示的数字. 获取当前的数字+1
  notification.applicationIconBadgeNumber = [[[UIApplication sharedApplication] scheduledLocalNotifications] count]+1;
//给这个通知增加key 便于半路取消。nfkey这个key是自己随便写的,还有notificationtag也是自己定义的ID。假如你的通知不会在还没到时间的时候手动取消,那下面的两行代码你可以不用写了。取消通知的时候判断key和ID相同的就是同一个通知了。
  NSDictionary *dict =[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:notificationtag],@”nfkey”,nil];
[notification setUserInfo:dict];
  // 启用这个通知
[[UIApplication sharedApplication] scheduleLocalNotification:notification];
// 创建了就要学会释放。如果不加这一句,通知到时间了,发现顶部通知栏提示的地方有了,然后你通过通知栏进去,然后你发现通知栏里边还有这个提示,除非你手动清除
  [notification release];
  }
  // 手动删除通知
  // 这里我们要根据我们添加时设置的key和自定义的ID来删
  NSArray *narry=[[UIApplication sharedApplication] scheduledLocalNotifications];
NSUInteger acount=[narry count];
if (acount>0)
  {
  // 遍历找到对应nfkey和notificationtag的通知
for (int i=0; i

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值