UILabel添加发光效果
来源:互联网 发布:淘宝汽车凹陷修复工具 编辑:程序博客网 时间:2024/04/30 17:37
#import <UIKit/UIKit.h>@interface DTGlowingLabel : UILabel{ UIColor *_outLineColor; UIColor *_insideColor; UIColor *b_lurColor;}@property (nonatomic, retain) UIColor *outLineColor;@property (nonatomic, retain) UIColor *insideColor;@property (nonatomic, retain) UIColor *blurColor;@end
#import "DTGlowingLabel.h"@implementation DTGlowingLabel@synthesize insideColor = _insideColor;@synthesize outLineColor = _outLineColor;@synthesize blurColor = _blurColor;- (id) init{ if(self=[super init]) { } return self;}- (void) drawRect:(CGRect)rect{ CGContextRef ctx = UIGraphicsGetCurrentContext(); CGContextSetStrokeColorWithColor(ctx, _outLineColor.CGColor); CGContextSetFillColorWithColor(ctx, _insideColor.CGColor); CGContextSetLineWidth(ctx, self.font.pointSize/60.0); CGContextSetShadowWithColor(ctx, CGSizeMake(0, 0), self.font.pointSize / 10.0, _blurColor.CGColor); CGTextDrawingMode mode = (_outLineColor==nil)? kCGTextFill: ((_insideColor==nil)?kCGTextStroke:kCGTextFillStroke); CGContextSetTextDrawingMode(ctx, mode); [self.text drawInRect:self.bounds withFont:self.font lineBreakMode:self.lineBreakMode alignment:self.textAlignment];}- (void)dealloc{ [super dealloc]; [self.insideColor release]; [self.outLineColor release]; [self.blurColor release];}@end