ios UITabBar UITabBarItem 设置角标 数字 红点 未读消息数量

在需求中经常遇到需要在Tabbar中显示一些角标提示,比如最常见聊天程序中要用到未读消息数量显示

原来以为系统没有自带这个功能,找了很多类似的案例都是自定义的Tabbar实现的。

今天突然间发现苹果自带该功能。随意记下来希望对这个问题一样走了弯路的有所帮助。

1.storyboard中设置方法:

查看了一下

Badge是NSString类型,这里可以随意设置,设置成一个空格-“ ”,就只有一个红点了

2.代码设置。感觉最常用的就是用代码设置了,这东西可能需要动态的变化。

(1)在初始化tabbar的时候设置

    UITabBarItem *item1 = [[UITabBarItem alloc] initWithTitle:@"好友" image:nil tag:0];
     [item1 setBadgeValue:@"1"];

 (2)在子视图中设置修改,这种操作比较常用

这里设置tabvar中的第一个baritem的角标

UITabBarItem * item=[self.tabBarController.tabBar.items objectAtIndex:0];
        item.badgeValue=[NSString stringWithFormat:@"%d",noHaveEvaluate];

你可能感兴趣的:(ios)