将且仅将UILabel上的所有数字变色指定的字体颜色

NGUI 3.8.2与Shader Forge 1.27实战:老项目UI与特效优化指南 在Unity游戏开发中,UI渲染与着色器(Shader)技术是构建丰富视觉表现的核心。UI系统负责界面元素的绘制与交互,其底层通过合批(Batching)机制优化绘制调用(Draw Call)来提升性能。而着色器则定义了物体表面的视觉呈现规则,通过处理纹理、颜色与光照,实现从基础显示到复杂特效的渲染。在存量项目维护与特定性能优化场景下,经典的NGUI系统与Shader Forge可视化编辑器因其极高的代码效率、成熟的资产生态与独特的性能特性,依然是不可替代的解决方案。本文聚焦于NGUI 3.8.2的Draw 阅读详情

先提出一个场景,一个UILabel上面有各种数字字符中文字符以及字母等,现在我们想将其中的数字找出来并且变为和其他字符不同的颜色。

这里提出一个解决方法,通过for循环来截取一个一个字符,判断其是不是0-9的数字,如果是就设置他的字体属性,我们使用了 NSMutableAttributedString实现富文本(带属性的字符串)。



NSAttributedString的使用方法,跟NSMutableString,NSString类似

1.使用方法:

为某一范围内文字设置多个属性

- (void)setAttributes:(NSDictionary *)attrs range:(NSRange)range;

为某一范围内文字添加某个属性

- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;

为某一范围内文字添加多个属性

- (void)addAttributes:(NSDictionary *)attrs range:(NSRange)range;

移除某范围内的某个属性

- (void)removeAttribute:(NSString *)name range:(NSRange)range;

2.     常见的属性及说明

NSFontAttributeName 字体

NSParagraphStyleAttributeName 段落格式 

NSForegroundColorAttributeName 字体颜色

NSBackgroundColorAttributeName  背景颜色

NSStrikethroughStyleAttributeName删除线格式

NSUnderlineStyleAttributeName     下划线格式

NSStrokeColorAttributeName       删除线颜色

NSStrokeWidthAttributeName删除线宽度

NSShadowAttributeName 阴影

//PS:下划线属性的设置方法

 //[attributeString addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:NSMakeRange(i, 1)];

  那么进入正题!,首先我们创建好UILabel,然后通过for循环来查找符合条件的数字

@property (nonatomic,strong)UILabel *myLabel;

    self.myLabel = [[UILabelalloc]initWithFrame:CGRectMake(0,0, 375,100)];

    self.myLabel.backgroundColor = [UIColorcyanColor];//天蓝色背景

    self.myLabel.textAlignment =1;//居中

    [self.viewaddSubview:self.myLabel];

//这是我们的测试用的文本字符串数据

NSString *content = @"abc123a1b2c3你懂得888";

    NSArray *number = @[@"0",@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9"];

    NSMutableAttributedString *attributeString  = [[NSMutableAttributedStringalloc]initWithString:content];

    for (int i = 0; i < content.length; i ++) {

//这里的小技巧,每次只截取一个字符的范围

        NSString *a = [content substringWithRange:NSMakeRange(i, 1)];

//判断装有0-9的字符串的数字数组是否包含截取字符串出来的单个字符,从而筛选出符合要求的数字字符的范围NSMakeRange

        if ([number containsObject:a]) {

            [attributeString setAttributes:@{NSForegroundColorAttributeName:[UIColorblueColor],NSFontAttributeName:[UIFontsystemFontOfSize:25],NSUnderlineStyleAttributeName:[NSNumbernumberWithInteger:NSUnderlineStyleSingle]} range:NSMakeRange(i, 1)];      

        }

        

    }

    //完成查找数字,最后将带有字体下划线的字符串显示在UILabel上

    self.myLabel.attributedText = attributeString;


一个功能较全的富文本控件源代码 一个可插入对象的富文本控件,采用文档、视结构 立即下载

相关推荐

NSAttributedString 的小例子

NSAttributedString的小例子 http://blog.youkuaiyun.com/zhangao0086/article/details/7616385

NSAttributedString换行

常用属性: NSFontAttributeName           文字字体 NSParagraphStyleAttributeName     段落样式(字符串通过“\n”进行分段,此设置必须在lable.numberOfLines = 0时有效,value通过NSMutableParagraphStyle设置,它有以下属性) [段落样式-插曲] 1 @property(

三多 1万+

从412到200:一步步拆解瑞数6代jsvmp的cookie生成与验证流程

本文深入解析瑞数6代JSVMP的动态安全防护机制,详细拆解从412到200状态的cookie生成与验证流程。通过剖析JSVMP虚拟机核心机制、动态元数据解析及环境检测绕过策略,为逆向工程师提供实用的技术解决方案,帮助突破瑞数6代的高级防御体系。

weixin_30342209的博客 508

自定义切圆角 IOS

NSMutableAttributedString *attString = [[NSMutableAttributedString alloc] initWithString:@"进击的巨人"];     NSShadow *shadow = [[NSShadow alloc]init];     shadow.shadowColor = [UIColor darkGrayCol

chungeshihuatian的专栏 1845

app逆向分析案例-95分

先把justtrusmeplus打开设置好95分,开始抓包,得到结果为: https://www.95fenapp.com/api_goods/list/v3.0?is_all=1&keywords=%E7%A7%91%E6%AF%94& page=1&page_size=20 &publish_timestamp=0 &scene=2&scene_type=95fen_android_search_personal&sn=SearchList

weixin_41763171的博客 2741

DAIC-WOZ数据集文件结构详解:CLNF特征文件、音频转录与PHQ8评分全解读

本文深入解析DAIC-WOZ数据集的文件结构,重点介绍CLNF特征文件、音频转录与PHQ8评分的详细内容。通过多模态数据处理实战指南,帮助研究者高效利用这一抑郁分析领域的重要资源,掌握面部动作单元、声学特征和文本转录的科学解读与应用技巧。

weixin_29159711的博客 183

改变UILabel其中一部分颜色

修改UILabel的某一部分颜色需要用到NSMutableAttributedString UILabel *label = [[UILabel alloc] init]; label.textColor = TextGrayColor; label.font = [UIFont systemFontOfSize:12];NSMutableAttributedString *string = [

4036

内网开发必备:5分钟搞定WSL2离线安装(含Ubuntu迁移避坑指南)

本文详细介绍了在内网环境下快速完成WSL2离线安装的完整流程,包括系统兼容性检查、Linux内核更新包安装以及Ubuntu镜像的离线部署。特别针对外网Ubuntu环境迁移至内网时的用户权限、系统路径等常见问题提供了实用解决方案,帮助开发者高效搭建Linux开发环境。

weixin_29255731的博客 402

用NSMutableAttributedString实现设置UILabel指定文字的格式(颜色,字体大小等)

最近项目有个需求是搜索关键字下拉框,带补全功能,比如输入c,弹窗tableview显示c,维生素C。。。等,然后把关键字c(C)设置颜色高亮 具体实现如下: - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {   

damon2989的专栏 3759

fins协议握手信号服务器响应,欧姆龙FinsTCP与FinsUDP协议解析 —— 利用Wireshark对报文逐字节进行解析详细解析附含报文模拟器等...

前言 – Fins欧姆龙这个协议网上极少有相关的模拟器、Tcp的这一块倒是有但是Udp的基本都是不可用1、 Fins协议结构也很简单 协议分为两种 一种tcp一种udp2、 Tcp比Udp的报文会多一层tcp的head头部3、 Udp回应报文在Wireshark中是解析不到(因为他按照UDP的格式去解那指定是解不到)好长时间没有更新过博客了、也比较懒= = 。一、Read(TCP)发包那么这个就很...

weixin_32491317的博客 4436

fpga学习——zynq图像处理中的DVP流接口封装

之前文章介绍了基于zynq的图像处理架构问题。其中,作为开发者,需要重点关注图像传感器接口、处理算法、显示接口,这些模块。现在我们一同学习用于视频数据接口的DVP模块,并将其封装成AXI-stream接口便于直接和VDMA IP通信。 DVP_AXI stream IP v1.0使用说明 1.设计概述 •用于cmos传感器视频数据采集,将cmos输出的8位视频数据拼接成RGB 565模式 •AXI_stream主机接口,用于和PS端内存的数据交互 •基于vivado 18.3软件设计 2.模块分析

weixin_41895751的博客 4581

将且仅将UILabel上的所有数字变色指定的字体颜色<转>

先提出一个场景,一个UILabel上面有各种数字字符中文字符以及字母等,现在我们想将其中的数字找出来并且变为和其他字符不同的颜色。 这里提出一个解决方法,通过for循环来截取一个一个字符,判断其是不是0-9的数字,如果是就设置他的字体属性,我们使用了 NSMutableAttributedString实现富文本(带属性的字符串)。 NSAttributedString的使用方法,跟NSMutabl...

weixin_34363171的博客 131

如何在iPhone上本地运行SmolVLM?5亿参数模型实战指南(附Swift代码)

本文详细介绍了如何在iPhone上本地部署和运行轻量高效的SmolVLM多模态模型。通过实战指南,分享了使用Swift和MLX框架进行环境配置、模型加载、内存优化以及实现实时图像分析与文本生成的完整流程,帮助开发者在移动端高效运行AI视觉语言模型。

echo99的专栏 654

iOS同一个Lable显示的不同颜色与大小

在项目中有的时候我们会用到同一个Lable,但是里面的文字却是不同一个颜色。在iOS 6 以后我们可以很轻松的实现这一点,官方的API 为我们提供了UILabel类的attributedText, 使用不同颜色和不同字体的字符串,我们可以使用NSAttributedText 和 NSMutableAttributedText 类来实现。 self.title = @"For iOS 6 & la

Ares称雄 32万+

基于滤波反投影的图像重建算法matlab仿真

基于滤波反投影的图像重建算法是一种用于医学影像重建的计算机辅助技术。该算法可以从投影数据中重建出高质量的三维图像,被广泛应用于医学影像学、CT、PET等领域。本文将详细介绍基于滤波反投影的图像重建算法的原理、步骤和应用。一、原理介绍基于滤波反投影的图像重建算法基于X射线CT成像原理,它的主要思想是通过对投影数据进行处理,反推出被成像物体的三维形状。其核心原理是投影数据与目标物体之间的线性关系,即通过估计目标物体的吸收率来计算投影数据的变化,从而反推出目标物体的三维形状。

平时工作较为繁忙,私信消息一般晚上回复,谢谢大家~~ 385

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

实现一段字符串中部分内容字体颜色大小变化

在label、button等等控件中,都可以对需要赋值的字符串设置字体属性,变量名为attributedText: @property(nullable, nonatomic,copy) NSAttributedString *attributedText NS_AVAILABLE_IOS(6_0); // default is nil 参数类型为NSAttributedString,当然我

yanll 2437

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

NGUI Label Color Code

文章目录[点击展开](?)[+] UILabel的颜色代码我的处理方法 所谓的RrGgBb 格式是这样的 W3C - 十六色色盘 HTML Color Codes UILabel的颜色代码 NGUI的Label文档:http://www.tasharen.com/?page_id=166 you can embed colors...

weixin_33795806的博客 161

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

U3D-NGUI-1

1.Game面板调整为标准面板960*640 2.Assets分类管理资源 GameAsset(model,UI) Scene Script(UI Script等) 3.保存场景 4.UGUI与NGUI不要混用,导入NGUI后在菜单栏NGUI创建Texture(图片,按钮等),Label,Panel等, 一个按钮的所有因素,用空物体打组。不同的UI界面用Panel区分,De

SelamatPagi的博客 501

string中识别手机号

昨天在开发查看物流的过程中,遇到这么一个场景: 当某一条物流信息的字符串中包含电话号码,然后显示的时候将电话号码用不同的颜色显示,并且点单这个号码时提示是否拨号; 当时百度了一下,有用的资料不好找, 找了很多关键字才碰上TTTAttributedLabel这个类; 下面,我来简单的使用这个类来完成这个场景;1.首先, 需要到gitHub上下载这个类包 , 其中一个.h和.m

Jesse0308的博客 1768

镂空文字、类歌词进度显示文字

Demo详见GitHub:JXTMarkLabel 镂空文字 - JXTHollowOutLabel 镂空文字效果的实现基于drawRect重绘,具体参考了两篇帖子: Drawing a path with subtracted text using Core Graphics drawRect drawing ‘transparent’ text? ...

jichw的专栏 719

iOS之UI--富文本总结

文章内容大纲 1、NSMutableAttributedString的基本使用 2、NSMutableAttributedString的简易封装 3、使用开源代码GOBMarkupPaser处理富文本 4、UITextKit简介 5、编程思想的相关思考 前言 富文本使用案例: 这里我自己也用了富文本实现了简单的却也是常用的例子:                    ...

weixin_34270865的博客 276
上一篇: [nsurl urlwithString:] 返回结果为nil
下一篇: iOS开发之APP上架要填写什么?有什么要注意?
网上的虫
博客等级 码龄11年 8粉丝 143原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值