2011-08-20 8 views
5

Estoy desarrollando una aplicación de recordatorio. Estoy usando notificaciones locales. Está funcionando bien. Pero siempre aparece un número de insignia en la parte superior del ícono de mi aplicación. ¿Cómo puedo eliminar el número de placa después de activar la notificación local? Cuando puse [UIApplication sharedApplication].applicationIconBadgeNumber = 0; en el final del lanzamiento, el número de la insignia se elimina por completo.Quitar el número de la insignia cuando se cancela la notificación local

Respuesta

6

supongo que usted está tratando de eliminar la badgeNumber desde el icono de la placa y mostrar sólo una (sin número) icono insignia vacío. No puede simplemente quitar el número de la placa solo del ícono de la insignia. Si configura applicationIconBadgeNumber en 0, el icono de la insignia se eliminará del icono de la aplicación.

Si la insignia debe mostrarse, debe haber un número, no un 0. 0 está destinado a eliminar el ícono de la insignia.

6

Siempre que la notificación se active en el delegado de la aplicación Método de notificación de notificación no reconocida iniciada Puede disminuir el recuento por uno y agregar uno cuando agrega una nueva notificación.

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 

    [UIApplication sharedApplication].applicationIconBadgeNumber=application.applicationIconBadgeNumber-1; 
} 

Saludos

2

i intentar hacer lo mismo y me encontré con esto:

Cuando la aplicación en el fondo y en la que tratan de establecer el LocalNotification a 0 no se eliminará el IconBadgeNumber. necesita establecer IconBadgeNumber en -1.

UILocalNotification *localSilentNotif; 
    localSilentNotif.applicationIconBadgeNumber = -1; 
Cuestiones relacionadas