iOS 通知功能实现

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) {

        

    }

}

你可能感兴趣的:(iOS)