Full refund within 14 days of purchase date.
iOS only allows badges in two very specific situations. When these are not sufficient, this component will allow you to have badges anywhere in your apps.
Features:
To install EZBadgeView, simply drag the EZBadgeView.h and the EZBadgeView.m files to your Xcode project. Be sure to import the EZBadgeView.h file at the top of any class you wish to use it in.
#import "EZBadgeView.h"
To easily show an EZBadgeView, simply call:
EZBadgeView *badgeView = [[EZBadgeView alloc] init];
badgeView.badgeValue = @"off";
[myView addSubview:badgeView];

How about one that stretches to the right using alignment left:
EZBadgeView *badgeView = [[EZBadgeView alloc] init];
badgeView.badgeAlignment = EZBadgeAlignmentLeft;
badgeView.badgeValue = @"stretches right";
[myView addSubview:badgeView];

This one stretches to the left:
EZBadgeView *badgeView = [[EZBadgeView alloc] init];
badgeView.badgeAlignment = EZBadgeAlignmentRight;
badgeView.badgeValue = @"stretches left";
[myView addSubview:badgeView];

And center:
EZBadgeView *badgeView = [[EZBadgeView alloc] init];
badgeView.badgeAlignment = EZBadgeAlignmentCenter;
badgeView.badgeValue = @"stretches center";
[myView addSubview:badgeView];

How about one that’s aligned with a particular right edge:
EZBadgeView *badgeView = [[EZBadgeView alloc] initWithRightEdge:CGRectGetMaxX(myView.bounds)];
badgeView.badgeValue = @"off";
[myView addSubview:badgeView];

A particular right point:
CGPoint point = CGPointMake(CGRectGetMaxX(myView.bounds), 25.0f);
EZBadgeView *badgeView = [[EZBadgeView alloc] initWithTopRightPoint:point];
badgeView.badgeValue = @"off";
[myView addSubview:badgeView];

Of course you can set the frame to anything you want and it will adhere to any alignment you set:
EZBadgeView *badgeView = [[EZBadgeView alloc] initWithFrame:CGRectMake(32, 19, 0, 0)];
badgeView.badgeValue = @"off";
[myView addSubview:badgeView];

Just need to work with integer values and don’t want to mess with strings?:
EZBadgeView *badgeView = [[EZBadgeView alloc] init];
badgeView.badgeIntValue = 36;
[myView addSubview:badgeView];

Don’t like the fancy shmancy?
EZBadgeView *badgeView = [[EZBadgeView alloc] initWithPlainBackgroundColor:[EZBadgeView classicBlueGrayColor] textColor:[UIColor whiteColor]];
badgeView.badgeValue = @"off";
[myView addSubview:badgeView];

There are many visual attributes that you can customize:
badgeView.badgeBackgroundColor = [UIColor blueColor];

You can remove all the fancy effects by calling:
[badgeView makePlain];

To reverse, call [badgeView makeFancy];
Other various effects can be customized like so:
badgeView.badgeIntValue = 456;
badgeView.shouldShowShine = NO;
badgeView.shouldShowShadow = YES;
badgeView.shouldShowGradient = NO;
badgeView.shouldShowBorder = YES;
badgeView.badgeBorderWidth = 1.0;
badgeView.badgeBorderColor = [UIColor orangeColor];
badgeView.badgeTextColor = [UIColor brownColor];
badgeView.badgeTextFont = [UIFont fontWithName:@"Arial" size:12.0f];
badgeView.badgeBackgroundColor = [UIColor whiteColor];

See the EZBadgeView Reference for all of the property settings available.
Questions & Comments