美文网首页
NSMutableAttributedString设置,下划线

NSMutableAttributedString设置,下划线

作者: 7c4878d661fd | 来源:发表于2015-08-03 15:13 被阅读0次

UILabel设置下划线

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 100, 310, 50)];

label.backgroundColor = [UIColor redColor];

[label setLineBreakMode:NSLineBreakByWordWrapping];

label.numberOfLines =3;

[label setFont:[UIFont systemFontOfSize:14]];

NSMutableAttributedString*content = [[NSMutableAttributedStringalloc]initWithString:[NSStringstringWithFormat:@"博文地址:http://www.cnblogs.com/xiaofeixiang博客园-FlyElephant QQ群:228407086"]];

NSRangecontentRange = {0,[content length]};

[content addAttribute:NSUnderlineStyleAttributeNamevalue:[NSNumbernumberWithInteger:NSUnderlineStyleSingle] range:contentRange];

label.attributedText = content;

[self.view addSubview:label];

UIButton设置下划线:

UIButton *button=[[UIButton alloc]initWithFrame:CGRectMake(10, 200, 80, 30)];

NSMutableAttributedString*title = [[NSMutableAttributedStringalloc] initWithString:@"FlyElephant"];

NSRangetitleRange = {0,[title length]};

[title addAttribute:NSUnderlineStyleAttributeNamevalue:[NSNumbernumberWithInteger:NSUnderlineStyleSingle] range:titleRange];

[button setAttributedTitle:title

forState:UIControlStateNormal];

[button setBackgroundColor:[UIColor redColor]];

[button.titleLabel setFont:[UIFont systemFontOfSize:14]];

[self.view addSubview:button];

方法二:

HyperlinksButton.h

[objc]view plaincopyprint?

#import 

@interfaceHyperlinksButton : UIButton

{

UIColor*lineColor;

}

-(void)setColor:(UIColor*)color;

@end

HyperlinksButton.m

[objc]view plaincopyprint?

#import "HyperlinksButton.h"

@implementationHyperlinksButton

- (id)initWithFrame:(CGRect)frame

{

self= [superinitWithFrame:frame];

if(self) {

}

returnself;

}

-(void)setColor:(UIColor*)color{

lineColor = [colorcopy];

[selfsetNeedsDisplay];

}

- (void)drawRect:(CGRect)rect {

CGRect textRect =self.titleLabel.frame;

CGContextRef contextRef = UIGraphicsGetCurrentContext();

CGFloat descender =self.titleLabel.font.descender;

if([lineColorisKindOfClass:[UIColorclass]]){

CGContextSetStrokeColorWithColor(contextRef, lineColor.CGColor);

}

CGContextMoveToPoint(contextRef, textRect.origin.x, textRect.origin.y+ textRect.size.height+ descender+1);

CGContextAddLineToPoint(contextRef, textRect.origin.x+ textRect.size.width, textRect.origin.y+ textRect.size.height+ descender+1);

CGContextClosePath(contextRef);

CGContextDrawPath(contextRef, kCGPathStroke);

}

@end

相关文章

网友评论

      本文标题:NSMutableAttributedString设置,下划线

      本文链接:https://www.haomeiwen.com/subject/neevqttx.html