IOS 开发过程中的 消息通知 小红点

来源:互联网 发布:用dos运行java 编辑:程序博客网 时间:2024/06/08 05:41

大致分为两种方法:系统方法和自定义方法

系统方法:

系统自带的方法可以显示具体的消息数量,这个就是苹果设备常见的小红点。实现思路如下:

NSArray *tabBarItems = self.navigationController.tabBarController.tabBar.items;

UITabBarItem *personCenterTabBarItem = [tabBarItems objectAtIndex:3];

personCenterTabBarItem.badgeValue = @"2";//显示消息条数为 2

效果如下图所示:

系统小红点

自定义方法:

自己将小红点图标放在想要显示的位置,控制UIImageView的hidden属性即可。实现思路如下:

UIImageView *dotImage = [[UIImageViewalloc]initWithImage:[UIImageimageNamed:@"red_point_small"]];

        dotImage.backgroundColor = [UIColorclearColor];

        CGRect tabFrame =self.navigationController.tabBarController.tabBar.frame;

        CGFloat x =ceilf(0.9 * tabFrame.size.width);

        CGFloat y =ceilf(0.1 * tabFrame.size.height);

        dotImage.frame =CGRectMake(x, y,8,8);

        [self.navigationController.tabBarController.tabBaraddSubview:dotImage];

效果如下图所示:

自定义小红点



上面提到的方法,基本上可以放在ViewController的任何位置,不过还有一种情况做不到,就是App的桌面应用图标上的消息提示。

————————————————————————————————————

App的桌面应用图标上的消息提示,实现思路如下:

       if ([[XWGlobalHelpersystemVersion]intValue] >7.99 && [[XWGlobalHelpersystemVersion]intValue] <9.001) {

            //IOS8 需要 设置

UIUserNotificationSettings *settings = [UIUserNotificationSettingssettingsForTypes:UIUserNotificationTypeBadgecategories:nil];

           [[UIApplicationsharedApplication]registerUserNotificationSettings:settings];

        }

        [UIApplicationsharedApplication].applicationIconBadgeNumber =3;

0 0
原创粉丝点击