可调整内边距的UILabel

继承UILabel,重载drawTextInRect方法。 //1.header file #import <UIKit/UIKit.h> @interface InsetsLabel : UILabel @property(nonatomic) UIEdgeInsets insets; -(id) initWithFrame:(CGRect)frame andInsets: (UIEdgeInsets) insets; -(id) initWithInsets: (UIEdgeInsets) insets; @end //2. implementation file @implementation InsetsLabel @synthesize insets=_insets; -(id) initWithFrame:(CGRect)frame andInsets:(UIEdgeInsets)insets { self = [super initWithFrame:frame]; if(self){ self.insets = insets; } return self; } -(id) initWithInsets:(UIEdgeInsets)insets { self = [super init]; if(self){ self.insets = insets; } return self; } -(void) drawTextInRect:(CGRect)rect { return [super drawTextInRect:UIEdgeInsetsInsetRect(rect, self.insets)]; } @end   调用部分 InsetsLabel * lblTitle=[[InsetsLabel alloc] initWithFrame:CGRectMake(0, 35+25*i, 185, 22)]; [lblTitle setInsets:UIEdgeInsetsMake(0, 5, 0, 5)];  

posted on 2013-03-25 16:01  流れ星ーー  阅读(195)  评论(0编辑  收藏  举报

导航