2011-10-07 13 views
12

en realidad estoy desarrollando un proyecto de alarma, ahora tengo una duda sobre la notificación local. ¿Cómo puedo identificar una notificación particular? ni siquiera podemos configurar la etiqueta para la notificación local, entonces, ¿cómo puedo diferenciarlos?cómo identificar una notificación particular en ios sdk

ejemplo:

notificación: 1

UILocalNotification *localNotification = [[UILocalNotification alloc] init]; 
    localNotification.fireDate = selectedDate; 
    localNotification.alertBody = @"you got work"; 
    localNotification.alertAction = @"Snooze"; 
    localNotification.repeatInterval = NSDayCalendarUnit; 
    localNotification.soundName = UILocalNotificationDefaultSoundName; 

    NSDictionary *infoDict = [NSDictionary dictionaryWithObjectsAndKeys:@"setNotificationForEveryDay", @"key", nil]; 
    localNotification.userInfo = infoDict; 

    [[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; 
    [localNotification release]; 

notificación: 2,

UILocalNotification *localNotification = [[UILocalNotification alloc] init]; 
    localNotification.fireDate = another selectedDate; 
    localNotification.alertBody = @"i got work"; 
    localNotification.alertAction = @"Snooze"; 
    localNotification.repeatInterval = NSDayCalendarUnit; 
    localNotification.soundName = UILocalNotificationDefaultSoundName; 
    NSDictionary *infoDict = [NSDictionary dictionaryWithObjectsAndKeys:@"setNotificationForEveryDay", @"key", nil]; 
    localNotification.userInfo = infoDict; 

    [[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; 
    [localNotification release]; 

Ahora estoy en situación de suprimir la segunda notificación cómo puedo hacerlo ... por favor ayúdenme ... gracias de antemano ..

Respuesta

8

Mi suposición es que use userInfo para distinguir las notificaciones locales que sería una mejor idea, pero para eso necesita establecer el userInfo de la notificación local.

Al igual que usted podría hacer algo como esto

 
if ([Your_notification_Object.userInfo valueForKey:@"Key 1"][email protected]"Object 1") { 

      NSLog(@"This is notification 1"); 
     } 

ahora para su segundo ejemplo requisito para la parte de borrado hace que desea borrar la notificación cuando se identifica como N1 o N2 entonces en ese caso podría modificar el código y añadir por encima de este

 
if ([Your_notification_Object.userInfo valueForKey:@"Key 1"][email protected]"Object 1") { 

      NSLog(@"This is notification 1"); 
[[UIApplication sharedApplication] cancelLocalNotification:Your_notification_Object]; 


     } 

Coloque el código anterior como por su comodidad

Cuestiones relacionadas