IOS 开发之UILabel 或者 UIButton加下划线链接
发布时间 - 2026-01-11 02:21:21 点击率:次IOS 开发之UILabel 或者 UIButton加下划线链接

本文主要介绍了IOS中 UILable及UIButton的带下划线链接的实现方法及附有源码下载,大家开发IOS 应用有需要的可以参考下:
方法一:
NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"查看所有中奖记录"];
NSRange strRange = {0,[str length]};
[str addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:strRange];
[_awardDisplayBtn setAttributedTitle:str forState:UIControlStateNormal];
方法二:
HyperlinksButton.h
#import <UIKit/UIKit.h>
@interface HyperlinksButton : UIButton
{
UIColor *lineColor;
}
-(void)setColor:(UIColor*)color;
@end
HyperlinksButton.m
[objc] view plain copy print?
#import "HyperlinksButton.h"
@implementation HyperlinksButton
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
}
return self;
}
-(void)setColor:(UIColor *)color{
lineColor = [color copy];
[self setNeedsDisplay];
}
- (void) drawRect:(CGRect)rect {
CGRect textRect = self.titleLabel.frame;
CGContextRef contextRef = UIGraphicsGetCurrentContext();
CGFloat descender = self.titleLabel.font.descender;
if([lineColor isKindOfClass:[UIColor class]]){
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
直接将这个类 copy 到工程中,,然后将需要加下划线的 Button 类名改为 HyperlinksButton就可以了,提供了 setColor: 这个接口,可以设置下划线颜色,代码很简单,不解释了。UILabel 同理可得。
示例结果:
源码下载地址:https://github.com/chaoyuan899/HyperlinksButton#how-to-use
本站源码下载:http://xiazai./201707/yuanma/HyperlinksButton-master().rar
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# UILabel
# 或者
# UIButton标题加下划线
# IOS
# 开发之下划线链接
# iOS基于 UILabel实现文字添加描边功能
# iOS如何封装带复制功能的UILabel示例代码
# iOS开发总结之UILabel常用属性介绍
# iOS中UILabel设置居上对齐、居中对齐、居下对齐及文字置顶显示
# iOS动态调整UILabel高度的几种方法
# iOS UILabel 设置内容的间距及高度的计算示例
# iOS中UILabel实现长按复制功能实例代码
# iOS UILabel根据内容自动调整高度
# iOS两丫技术之UILabel性能不够的解决方法
# 下划线
# 源码下载
# 下载地址
# 希望能
# 很简单
# 谢谢大家
# 可得
# 就可以
# UIControlStateNormal
# forState
# HyperlinksButton
# lt
# import
# NSUnderlineStyleSingle
# numberWithInteger
# range
# setAttributedTitle
# _awardDisplayBtn
# setColor
# color
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧
Laravel如何操作JSON类型的数据库字段?(Eloquent示例)
简单实现Android验证码
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
php json中文编码为null的解决办法
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
SQL查询语句优化的实用方法总结
网站制作软件免费下载安装,有哪些免费下载的软件网站?
如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环
Laravel怎么使用artisan命令缓存配置和视图
开心动漫网站制作软件下载,十分开心动画为何停播?
Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验
ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
Laravel如何使用Eloquent进行子查询
Laravel怎么使用Intervention Image库处理图片上传和缩放
西安专业网站制作公司有哪些,陕西省建行官方网站?
清除minerd进程的简单方法
如何做网站制作流程,*游戏网站怎么搭建?
phpredis提高消息队列的实时性方法(推荐)
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
网站制作壁纸教程视频,电脑壁纸网站?
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
Laravel如何为API编写文档_Laravel API文档生成与维护方法
如何在云主机上快速搭建网站?
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
晋江文学城电脑版官网 晋江文学城网页版直接进入
如何在万网ECS上快速搭建专属网站?
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
如何快速使用云服务器搭建个人网站?
Laravel怎么实现模型属性的自动加密
PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑
Android 常见的图片加载框架详细介绍
HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】
Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
北京网站制作的公司有哪些,北京白云观官方网站?
如何用IIS7快速搭建并优化网站站点?
详解CentOS6.5 安装 MySQL5.1.71的方法
如何快速搭建支持数据库操作的智能建站平台?
nginx修改上传文件大小限制的方法
如何在香港免费服务器上快速搭建网站?
手机网站制作与建设方案,手机网站如何建设?
Linux后台任务运行方法_nohup与&使用技巧【技巧】
如何用免费手机建站系统零基础打造专业网站?
魔方云NAT建站如何实现端口转发?

