2011-08-20 28 views
5

Tôi đang phát triển ứng dụng nhắc nhở. Tôi đang sử dụng thông báo địa phương. Nó hoạt động tốt. Nhưng một số huy hiệu luôn hiển thị trên biểu tượng ứng dụng của tôi. Làm cách nào để xóa số huy hiệu sau khi kích hoạt thông báo địa phương? Khi tôi đặt [UIApplication sharedApplication].applicationIconBadgeNumber = 0; khi hoàn tất việc khởi chạy, số hiệu huy hiệu sẽ bị xóa hoàn toàn.Xóa số huy hiệu khi thông báo địa phương bị hủy

Trả lời

6

Tôi đoán rằng bạn đang cố gắng để loại bỏ các badgeNumber từ biểu tượng huy hiệu và chỉ hiển thị một biểu tượng huy hiệu trống rỗng (không có bất kỳ số lượng). Bạn không thể chỉ xóa số huy hiệu một mình khỏi biểu tượng huy hiệu. Nếu bạn đặt applicationIconBadgeNumber thành 0, biểu tượng huy hiệu sẽ bị xóa khỏi biểu tượng ứng dụng.

Nếu huy hiệu được hiển thị thì phải có một số, không phải là số 0. 0 được thêm vào để xóa biểu tượng huy hiệu.

6

Bất cứ khi nào thông báo được kích hoạt trong ứng dụng ủy quyền didReceiveLocalNotification Method Fired Bạn có thể giảm số lượng một và thêm một khi bạn thêm thông báo mới.

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

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

Cheers

2

tôi cố gắng điều tương tự và tôi thấy điều này:

Khi ứng dụng trong trong nền và bạn cố gắng để thiết lập các LocalNotification 0 nó sẽ không loại bỏ các IconBadgeNumber. bạn cần đặt IconBadgeNumber thành -1.

UILocalNotification *localSilentNotif; 
    localSilentNotif.applicationIconBadgeNumber = -1; 
Các vấn đề liên quan