在需求中经常遇到需要在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];