#import "LQ_Bandge.h"
@implementation LQ_Bandge
- (UIView *)showBadgeValue:(NSString *)strBadgeValue
{
UITabBar *tabBar = [[UITabBar alloc] initWithFrame:CGRectMake(0, 0, 320, 50)];
UITabBarItem *item = [[UITabBarItem alloc] initWithTitle:@"" image:nil tag:0];
item.badgeValue = strBadgeValue;
NSArray *array = [[NSArray alloc] initWithObjects:item, nil];
tabBar.items = array;
//寻找
for (UIView *viewTab in tabBar.subviews) {
for (UIView *subview in viewTab.subviews) {
NSString *strClassName = [NSString stringWithUTF8String:object_getClassName(subview)];
if ([strClassName isEqualToString:@"UITabBarButtonBadge"] ||
[strClassName isEqualToString:@"_UIBadgeView"]) {
[subview removeFromSuperview];
[self addSubview:subview];
subview.frame = CGRectMake(self.frame.size.width-subview.frame.size.width, 0,
subview.frame.size.width, subview.frame.size.height);
return subview;
}
}
}
return nil;
}
应用:
- (void)viewDidLoad {
[super viewDidLoad];
UIButton *btn = [[UIButton alloc]initWithFrame:CGRectMake(0, 100, 100, 40)];
btn.backgroundColor = [UIColor orangeColor];
[btn setTitle:@"HHH" forState:UIControlStateNormal];
btn.tag = 100;
[self.view addSubview:btn];
_B_View= [[LQ_Bandge alloc]initWithFrame:btn.bounds];
_B_View.tag = 101;
[btn addSubview:[_B_View showBadgeValue:@"11"]];
}
-(void)tttttt
{
UIButton *btn = [self.view viewWithTag:100];
UIView *view = [btn.subviews firstObject];
[view removeFromSuperview];
NSLog(@"%@",btn.subviews);
}
}