UILabel中加入删除横线

本文介绍如何自绘一个带有删除线的文本标签,通过重写控件的drawRect方法,并详细解释了从上下文对象的获取到颜色设定、路径绘制等关键步骤。同时提供了一个简单的测试代码,展示实现后的效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【转载】http://blog.youkuaiyun.com/pre_eminent/article/details/38725441

 

一个带删除线的文本标签,继承自UILabel

 

自绘代码步骤如下:

1,重写控件的drawRect方法

2,首先得到上下文对象

3,设置颜色,并指定是填充(Fill)模式还是笔刷(Stroke)模式

4,在上下文中指定删除线的起点(含x,y)

5,根据标签文字的字体,确定文字的长度(即将被画的线条的长度)

6,指定删除线的终点(含x,y)

7,渲染到上下文,完成路径的绘制

 

 

出来的效果是:

测试代码如下:

1 UILabelWithCrossLine *lb = [[UILabelWithCrossLine alloc] initWithFrame:CGRectMake(0, 0, 220, 60)];
2     [self.view addSubview:lb];
3     lb.text = @"This is test label.";
4     lb.numberOfLines = 1;
5     lb.center = CGPointMake(320/2, 200);

不需要调用needdisaplay

转载于:https://www.cnblogs.com/huangzizhu/p/3929650.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值