AppDelegate 注册并发送通知:
int unread = [[JMSGConversation getAllUnreadCount] intValue];
NSDictionary *dict=[NSDictionary dictionaryWithObject:[NSString stringWithFormat:@"%d",unread] forKey:@"content" ];
NSNotification *notification = [NSNotification notificationWithName:@"unread" object:self userInfo:dict];
#pragma mark 发送通知
[[NSNotificationCenter defaultCenter]postNotification:notification];
viewDidLoad监听通知:
#pragma mark 监听通知
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notification:) name:@"unread" object:nil];
通知方法实现 :
#pragma mark 通知获取
- (void)notification:(NSNotification *)notif{
@try {
NSDictionary *dict = [notif valueForKey:@"userInfo"];
NSString *readStr = [dict valueForKey:@"content"];
UITabBarItem *item = [self.tabBarController.tabBar.items objectAtIndex:2];
if ([readStr intValue]) {
item.badgeValue = [NSString stringWithFormat:@"%@",readStr];
}else{
item.badgeValue = nil;
}
} @catch (NSException *exception) {
}
}