UILabel Text 加下划线

.h文件
#import <Foundation/Foundation.h>

@interface CustomLabel : UILabel
{
    BOOL _isEnabled;
}

@property (nonatomic ) BOOL isEnabled;

@end

.m文件
#import "CustomLabel.h"

@implementation CustomLabel

@synthesize isEnabled = _isEnabled;

- (void)drawTextInRect:(CGRect)rect{
    [super drawTextInRect:rect];
    
    CGSize textSize = [[self text] sizeWithFont:[self font]];
    CGFloat strikeWidth = textSize.width;
    CGRect lineRect;
    
    if ([self textAlignment] == NSTextAlignmentRight) {
        lineRect = CGRectMake(rect.size.width - strikeWidth, rect.size.height/2, strikeWidth, 1);
    } else if ([self textAlignment] == NSTextAlignmentCenter) {
        lineRect = CGRectMake(rect.size.width/2 - strikeWidth/2, rect.size.height/2, strikeWidth, 1);
    } else {
        lineRect = CGRectMake(0, rect.size.height/2, strikeWidth, 1);
    }
    
    if (_isEnabled) {
        CGContextRef context = UIGraphicsGetCurrentContext();
        CGContextFillRect(context, lineRect);
    }
}

// 调用

CustomLabel *_label;
 _label = [[CustomLabel alloc]initWithFrame:CGRectMake(50, 100, 0, 40)];
 _label.text = @"这是一个多么美好的世界啊";
 _label.backgroundColor = [UIColor clearColor];
 _label.isEnabled = YES;
 [_label sizeToFit];
  _label.textColor = [UIColor redColor];
 [self.view addSubview:_label];

 

转载于:https://www.cnblogs.com/joesen/p/3200016.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值