时间:2021-05-02
实现原理:
其实是自定义一个view,将view添加到UITabBar上面,也可以是一个按钮,设置背景图片,和label。
废话少说直接上代码
搞一个UITabBar的分类
? 1 2 3 4 5 #import <UIKit/UIKit.h> @interface UITabBar (Extension) - (void)showBadgeOnItmIndex:(int)index; - (void)hideBadgeOnItemIndex:(int)index; @end ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 #import "UITabBar+Extension.h" #define TabbarItemNums 5.0 @implementation UITabBar (badge) //显示红点 - (void)showBadgeOnItmIndex:(int)index{ [self removeBadgeOnItemIndex:index]; //新建小红点 UIView *bview = [[UIView alloc]init]; bview.tag = 888+index; bview.layer.cornerRadius = 5; bview.clipsToBounds = YES; bview.backgroundColor = [UIColor redColor]; CGRect tabFram = self.frame; float percentX = (index+0.6)/TabbarItemNums; CGFloat x = ceilf(percentX*tabFram.size.width); CGFloat y = ceilf(0.1*tabFram.size.height); bview.frame = CGRectMake(x, y, 10, 10); [self addSubview:bview]; [self bringSubviewToFront:bview]; } //隐藏红点 -(void)hideBadgeOnItemIndex:(int)index{ [self removeBadgeOnItemIndex:index]; } //移除控件 - (void)removeBadgeOnItemIndex:(int)index{ for (UIView*subView in self.subviews) { if (subView.tag == 888+index) { [subView removeFromSuperview]; } } } @end最后在子控制器调用就可以啦
[self.tabBarController.tabBar showBadgeOnItmIndex:4];
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持服务器之家!
原文链接:http://www.jianshu.com/p/8d654aa2aac3
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
应用图标上会有“小红点”的数字角标出现,表示该应用有新的通知消息。那荣耀30pro微信桌面角标怎么设置数字显示未读信息数量呢?感兴趣的朋
在很多APP里面,经常会看到未读消息的小红点,如下图:这个功能用到的是一个控件,叫做BadgeView。BadgeView的用法很简单,直接把jar文件导入包中
苹果手表上的红点是有新消息的意思。如果当前有未读通知的话,会在屏幕顶部上显示有一个小小的红色圆点。 AppleWatch是苹果公司旗下的一款智能手表,采用人造
万年历标记消息为已读教程。经常收到万年历的消息,不想看,但是未读标志一直显示,有强迫症的你肯定看不习惯吧,可以将消息标记为已读,那么要怎么设置呢?现在小编就教大
抖音没有已读功能,因此抖音消息一键已读也就无从谈起了。目前,抖音所发送的消息是不显示已读或者未读的,用户私信消息后只能看到消息已送达,对方是否已读是无法看到的,