实现原理:
其实是自定义一个view,将view添加到UITabBar上面,也可以是一个按钮,设置背景图片,和label。
废话少说直接上代码
搞一个UITabBar的分类
#import <UIKit/UIKit.h> @interface UITabBar (Extension) - (void)showBadgeOnItmIndex:(int)index; - (void)hideBadgeOnItemIndex:(int)index; @end
#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];
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持小牛知识库!
#include <stdio.h> #include <pthread.h> int a = 0; void *thread1_func(void *p_arg) { while (1) { printf("%d\n", a); sleep(10); } } int main(v
本文向大家介绍IOS设置QQ小红点消除的方法(一键退朝),包括了IOS设置QQ小红点消除的方法(一键退朝)的使用技巧和注意事项,需要的朋友参考一下 QQ上黏黏的小红点很好玩有木有,于是自己也想实现一番,看到iOS实现的人比较少,Android的比较多,于是这个就用iOS来实现哈~ 效果图: 调试图: 其实从实现来讲,我是先实现第二张图的效果的。 呐喊教程小编给大家说下实现思路 1.了解原理,以
如图,如何给el-tab的el-tab-pane的label添加未读消息红点或者是未读消息的数量。
该未读消息接口记录不含在通知内的消息,如当前用户收到的评论、点赞和未处理的审核等,调用相应的列表和操作接口,讲自动清零 GET /user/unread-count Response Status: 200 OK { "counts": { "user_id": 1, "unread_comments_count": 0, "unread_likes_count":
#include <stdio.h> #include <pthread.h> int a = 0; void *thread1_func(void *p_arg) { while (1) { a++; sleep(10); } } void *thread2_func(void
问题内容: 当选择menuItem时,尝试关闭当前场景并打开另一个场景时出现问题。我的主要阶段编码如下: 执行该程序后,它将转到cartHomePage.fxml。选择菜单项后,我可以从那里选择创建产品或创建类别。这是我的动作事件: 但是,我只能切换一次舞台。例如,我的默认页面是cartHomePage.fxml。运行程序时,首先要创建产品阶段。在那之后,我不能再去任何地方了。错误消息是: 我关上