一个label 里面 显示中文和英文不同颜色
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor yellowColor];
//这个是你请求的 东西
NSString *stringlabel = @"hello的期望Word的期望";
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(10, 70, 300, 50)];
label.backgroundColor = [UIColor redColor];
[self.view addSubview:label];
//把你请求下来的数据NSString转换为 NSMutableAttributedString 这个是可以变颜色的可变string
NSMutableAttributedString * attStr = [[NSMutableAttributedString alloc]initWithString:stringlabel];
//符合中文的正则表达式
NSString *string =@"[\u4E00-\u9FA5]";
NSError *error;
//创建正则表达式
NSRegularExpression *regex = [[NSRegularExpression alloc] initWithPattern:string options:0 error:&error];
if (!error)
{
//遍历字符串,获得所有的匹配字符串
NSArray * arr = [regex matchesInString:stringlabel options:0 range:NSMakeRange(0, stringlabel.length)];
// 遍历匹配后的每一条记录
for (NSTextCheckingResult *match in arr) {
NSRange range = [match range];
NSLog(@"----%d", range);
//遍历 拿到符合要求的 range 然后根据 range 让他改变颜色
//http://www.cnblogs.com/taintain1984/p/3550525.html 这个是网站 你看一下
[attStr addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(range.location, range.length)];
//这个东西对英文 改变比较大 对中文不大你可以试试
[attStr addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial-ItalicMT" size:20.0] range:NSMakeRange(0, 5)];
//然后把你的 应该用的label 的这个属性text 接受 这个可变的 String
label.attributedText = attStr;
}
}
}
一个label 里面 显示中文和英文不同颜色的更多相关文章
- 微软BI 之SSRS 系列 - 如何实现报表标签的本地化 - 中文和英文的互换
SSRS 中并没有直接提供本地化的配置方式,因此在 SSRS 中实现本地化,比如有英文标题还有可选的中文标题,就需要通过其它的方式来解决. 比如默认是这样的英文标题 - 但是本地中方用户可能比较喜欢看 ...
- 小米2S 中文和英文支持TWRP,真实双系统支持
经过我几天的努力小米2S的TWRP 的功能已经完美了. 支持功能 : 中文和英文显示能相互切换 真实双系统功能已经完成95%. 刷入手机方法.由于时间原因我只制作了img文件.没有制作成卡刷包格式. ...
- git status 显示中文和解决中文乱码
目录 git status 显示中文和解决中文乱码 解决git status不能显示中文 解决git bash 终端显示中文乱码 通过修改配置文件来解决中文乱码 git status 显示中文和解决中 ...
- 我的Java开发学习之旅------>工具类:Java使用正则表达式分离出字符串中的中文和英文
今天看到一个工具类使用正则表达式将一大段字符串中的中文和英文都分离出来了,在此记录一下,读者可以收藏! import java.util.ArrayList; import java.util.Col ...
- matplotlib 无法显示中文和负号的解决办法
matplotlib无法显示中文和负号解决办法
- JS-只能输入中文和英文
<span style="font-family:KaiTi_GB2312;">转自:<a target=_blank href="http://www ...
- python2.7.x的字符串编码到底什么鬼?(中文和英文的处理)
一直以来我其实一直对python的编码弄得非常晕,能正常编码,也能处理一些情况.但是始终不明白有些问题究竟为何出,原因是什么,为什么要这样用. 今天晚上正好好好研究了一番解答了自己心中的困惑. Q:p ...
- 嵌入式qt显示中文和隐藏鼠标
最近项目快接近尾声了,要把项目移植到板子上,但是板子上的系统没有安装字库,导致中文无法显示,并且有一个很讨厌的鼠标光标(又没有鼠标),上网找了一些解决方案,记录一下 qt显示中文: 如果你急于在ARM ...
- JS判断字符串长度的5个方法(区分中文和英文)
目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) 方法一: 代码如下: String.prototype.gblen = function() { var len = 0; fo ...
随机推荐
- Android手势源码浅析-----手势绘制(GestureOverlayView)
Android手势源码浅析-----手势绘制(GestureOverlayView)
- uestc Palindromic String
字符串hash因为如果一个字符串是回文串,那么正着做哈希和反着做哈希结果应该一样.于是我们先正反各做一边哈希.如果判断出来一个字符串是回文穿那么这个字符串的前半部分和后半部分的重数一定相同,于是当前位 ...
- 指针和Const限定符
指针和Const限定符 1.指向const对象的指针 如果指针指向的是const对象,则不允许使用指针来改变其所指的const值.C++要求指向const对象的指针具有const特性. const d ...
- SQL学习之学会使用子查询
1.SELECT语句是SQL的查询.我之前的随笔中所用的SELECT语句都是简单的查询,即从单个数据库表中检索数据的单条SELECT语句. 查询:任何SQL语句都是查询,但此术语一般指SELECT语句 ...
- React.js 是什么?
在相当长的一段时间内,我很努力地去尝试理解 React 是什么以及它在应用架构上的健壮程度.这篇文章解答了我希望别人为我解答的疑惑. React 是什么? 和 Angular,Ember,Backbo ...
- 2014.8.30.ref,out,params,enum,递归
(一)ref 函数形参变量的输入有两种方式:传值,传址.而ref则为传址.eg: static int Add(ref int n) { Console.WriteLine("Add---- ...
- NET项目反编译+VS解决方案整理流程
net项目反编译 工具:De4Dot + IL SPY和Reflector结合使用 项目:vs10+创建解决方案,每个类库尽量按照dll名来命名,方便整合,新建web项目先把aspx等文件拷贝进去,注 ...
- 转 --maven系列之二 安装与配置
http://blog.csdn.net/jiuqiyuliang/article/details/45390313 [项目管理和构建]——Maven下载.安装和配置(二) 标签: 工具开发maven ...
- Scala io操作
1. 读文件 scala特有的是scala.io.Source,例如: import scala.io._ Source.fromFile(“cn.scala”,”utf8”).mkString 逐行 ...
- JSONObject put accumulate element 方法区别-------java中
1.public Object put (Object key, Object value) 将value映射到key下.如果此JSONObject对象之前存在一个value在这个key下,当前的va ...