2016.04.06 UITabBar+badge.h
2016-04-06 16:06
337 查看
#import <UIKit/UIKit.h>
@interface UITabBar (badge)
- (void)showBadgeOnItemIndex:(int)index; //显示小红点
- (void)hideBadgeOnItemIndex:(int)index; //隐藏小红点
@end
.m
//
// UITabBar+badge.m
// Patient
//
// Created by wangjian on 15/12/2.
// Copyright © 2015年 ShangYu. All rights reserved.
//
#import "UITabBar+badge.h"
#define TabbarItemNums 5.0
@implementation UITabBar (badge)
//- (void)showBadgeOnItemIndex:(int)index; //显示小红点
//- (void)hideBadgeOnItemIndex:(int)index; //隐藏小红点
//显示小红点
- (void)showBadgeOnItemIndex:(int)index{
//移除之前的小红点
[self removeBadgeOnItemIndex:index];
//新建小红点
UIView *badgeView = [[UIView alloc]init];
badgeView.tag = 888 + index;
badgeView.layer.cornerRadius = 5;//圆形
badgeView.backgroundColor = [UIColor redColor];//颜色:红色
CGRect tabFrame = self.frame;
//确定小红点的位置
float percentX = (index +0.6) / TabbarItemNums;
CGFloat x = ceilf(percentX * tabFrame.size.width);
CGFloat y = ceilf(0.1 * tabFrame.size.height);
badgeView.frame = CGRectMake(x, y, 10, 10);//圆形大小为10
[self addSubview:badgeView];
}
//隐藏小红点
- (void)hideBadgeOnItemIndex:(int)index{
//移除小红点
[self removeBadgeOnItemIndex:index];
}
//移除小红点
- (void)removeBadgeOnItemIndex:(int)index{
//按照tag值进行移除
for (UIView *subView in self.subviews) {
if (subView.tag == 888+index) {
[subView removeFromSuperview];
}
}
}
@end
@interface UITabBar (badge)
- (void)showBadgeOnItemIndex:(int)index; //显示小红点
- (void)hideBadgeOnItemIndex:(int)index; //隐藏小红点
@end
.m
//
// UITabBar+badge.m
// Patient
//
// Created by wangjian on 15/12/2.
// Copyright © 2015年 ShangYu. All rights reserved.
//
#import "UITabBar+badge.h"
#define TabbarItemNums 5.0
@implementation UITabBar (badge)
//- (void)showBadgeOnItemIndex:(int)index; //显示小红点
//- (void)hideBadgeOnItemIndex:(int)index; //隐藏小红点
//显示小红点
- (void)showBadgeOnItemIndex:(int)index{
//移除之前的小红点
[self removeBadgeOnItemIndex:index];
//新建小红点
UIView *badgeView = [[UIView alloc]init];
badgeView.tag = 888 + index;
badgeView.layer.cornerRadius = 5;//圆形
badgeView.backgroundColor = [UIColor redColor];//颜色:红色
CGRect tabFrame = self.frame;
//确定小红点的位置
float percentX = (index +0.6) / TabbarItemNums;
CGFloat x = ceilf(percentX * tabFrame.size.width);
CGFloat y = ceilf(0.1 * tabFrame.size.height);
badgeView.frame = CGRectMake(x, y, 10, 10);//圆形大小为10
[self addSubview:badgeView];
}
//隐藏小红点
- (void)hideBadgeOnItemIndex:(int)index{
//移除小红点
[self removeBadgeOnItemIndex:index];
}
//移除小红点
- (void)removeBadgeOnItemIndex:(int)index{
//按照tag值进行移除
for (UIView *subView in self.subviews) {
if (subView.tag == 888+index) {
[subView removeFromSuperview];
}
}
}
@end
相关文章推荐
- easyui使用layou时自适应窗口
- UISearchDisplayController索引栏背景透明
- UISearchDisplayController索引栏背景透明
- 基于Vue 和 webpack的项目实现
- marquee在IE8版本(兼容模式)不滚动
- [BTS] The value "" for the property InboundId is invalid
- iOS UICollectionViewCell 的拖动
- LEAPMOTION开发UI专题(1)
- EasyUI+bootsrtap混合前端框架
- iOS 8.1中UIImagePickerController的相机镜头旋转bug
- UITableViewCell 基础编
- java中的多线程包---CompletionService Executor + BlockingQueue
- UIScrollView的delaysContentTouches与canCencelContentTouches属性
- UIMotionEffect和Home页背景视差效果
- Ui学习笔记---EasyUI的使用方法,EasyLoader组件使用
- imbue(std::locale("chs"))
- iOS开发概述UIkit动力学
- INSTALL_FAILED_UID_CHANGED
- vue.js
- UIsearchBar怎么将canal改为取消,怎么点击取消按钮将键盘和searchbar复原