.h
#import <UIKit/UIKit.h>
@interface UIImage (Color)
+ (UIImage *) ly_imageWithColor:(UIColor *)color;
+ (UIImage *) ly_imageWithColor:(UIColor *)color Size:(CGSize)size;
- (UIImage *) ly_stretched;
@end
.m
#import "UIImage+Color.h"
@implementation UIImage (Color)
+ (UIImage *) ly_imageWithColor:(UIColor *)color {
return [UIImage ly_imageWithColor:color Size:CGSizeMake(4.0f, 4.0f)];
}
+ (UIImage *) ly_imageWithColor:(UIColor *)color Size:(CGSize)size
{
CGRect rect = CGRectMake(0.0f, 0.0f, size.width, size.height);
UIGraphicsBeginImageContext(size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [color CGColor]);
CGContextFillRect(context, rect);
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return [image ly_stretched];
}
- (UIImage *) ly_stretched
{
CGSize size = self.size;
UIEdgeInsets insets = UIEdgeInsetsMake(truncf(size.height-1)/2, truncf(size.width-1)/2, truncf(size.height-1)/2, truncf(size.width-1)/2);
return [self resizableImageWithCapInsets:insets];
}
@end