iOS TabBarItem设置红点(未读消息)

 更新时间:2017年04月10日 11:53:22   作者:rockyMJ  
本文主要介绍了iOS利用TabBarItem设置红点(未读消息)的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧

实现原理:

其实是自定义一个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];

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • iOS实现自定义起始时间选择器视图

    iOS实现自定义起始时间选择器视图

    本篇文章主要介绍了iOS实现自定义起始时间选择器视图,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • 删除xcode 中过期的描述性文件方法

    删除xcode 中过期的描述性文件方法

    下面小编就为大家分享一篇删除xcode 中过期的描述性文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • iOS开发实现下载器的基本功能(1)

    iOS开发实现下载器的基本功能(1)

    这篇文章主要为大家详细介绍了iOS开发实现下载器基本功能的相关资料,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • iOS中TableView如何统一数据源代理详解

    iOS中TableView如何统一数据源代理详解

    这篇文章主要给大家介绍了关于iOS中TableView如何统一数据源代理的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-07-07
  • IOS10 配置权限详细介绍

    IOS10 配置权限详细介绍

    这篇文章主要介绍了IOS10 配置权限详细介绍的相关资料,访问相机、相册、麦克风、通讯录等等权限,都需要进行相关的配置,不然会直接crash,需要的朋友可以参考下
    2016-12-12
  • 使用objc runtime实现iOS闭环的懒加载功能

    使用objc runtime实现iOS闭环的懒加载功能

    利用objc runtime的动态性实现懒加载可以实现即可增加又可删除功能,也可以避免污染类型。这篇文章主要介绍了使用objc runtime实现iOS闭环的懒加载功能,需要的朋友可以参考下
    2019-06-06
  • ios通过SDWebImage实现图片加载时的渐变效果

    ios通过SDWebImage实现图片加载时的渐变效果

    本篇文章主要介绍了ios通过SDWebImage实现图片加载时的渐变效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • 详解使用Xcode7的Instruments检测解决iOS内存泄露(最新)

    详解使用Xcode7的Instruments检测解决iOS内存泄露(最新)

    本篇文章主要介绍使用Xcode7的Instruments检测解决iOS内存泄露(最新)的相关资料,需要的朋友可以参考下
    2017-09-09
  • iOS实现类似格瓦拉电影的转场动画

    iOS实现类似格瓦拉电影的转场动画

    这篇文章主要给大家介绍了利用iOS如何实现类似格瓦拉电影的转场动画,文中给出了详细步骤实现代码,对大家的学习和理解很有帮助,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-11-11
  • ios电子书翻页效果代码详解

    ios电子书翻页效果代码详解

    这篇文章主要介绍了ios电子书翻页效果代码实现过程以及对应的代码讲解,有需要的朋友参考下。
    2018-02-02

最新评论