借用别人封装好的类库,用来显示同一个UILable上的多种颜色的字。

类库可以直接在次博客中下载,下载后别忘留言哦。

类库使用:主要用了CoreText里面的东西,所以在使用类库之前需要引用CoreText这个系统框架。

注意,此封装的类库不支持ARC

类库设置好后,开始进行使用此类库里面的方法:

// Do any additional setup after loading the view, typically from a nib.

/*

注,此处的color对应的值必须是系统预定义好的,有

+ (UIColor *)blackColor;      // 0.0 white

+ (UIColor *)darkGrayColor;   // 0.333 white

+ (UIColor *)lightGrayColor;  // 0.667 white

+ (UIColor *)whiteColor;      // 1.0 white

+ (UIColor *)grayColor;       // 0.5 white

+ (UIColor *)redColor;        // 1.0, 0.0, 0.0 RGB

+ (UIColor *)greenColor;      // 0.0, 1.0, 0.0 RGB

+ (UIColor *)blueColor;       // 0.0, 0.0, 1.0 RGB

+ (UIColor *)cyanColor;       // 0.0, 1.0, 1.0 RGB

+ (UIColor *)yellowColor;     // 1.0, 1.0, 0.0 RGB

+ (UIColor *)magentaColor;    // 1.0, 0.0, 1.0 RGB

+ (UIColor *)orangeColor;     // 1.0, 0.5, 0.0 RGB

+ (UIColor *)purpleColor;     // 0.5, 0.0, 0.5 RGB

+ (UIColor *)brownColor;      // 0.6, 0.4, 0.2 RGB

+ (UIColor *)clearColor;      // 0.0 white, 0.0 alpha

否则,程序会crash。

*/

NSString *text =@"Hello <font color=\"red\">core text <font color=\"blue\">world!\nHello <font color=\"lightGray\">core text <font color=\"green\">world!";//[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:NULL];

MarkupParser *p = [[[MarkupParseralloc]init ]autorelease];

NSAttributedString *attString = [p attrStringFromMarkup:text];

[self.customLabelsetAttString:attString];

解释:customLabel就是封装类库中自定义的CustomLable,我在这是直接拖的控件,如果你使用可以首先实例化出次对象,然后在进行运用。

多颜色主要用到的是HTML标签,MarkupParser的目的就是为了识别此标签。

类库下载

UILable:显示多种颜色的方法的更多相关文章

  1. TextView的一些高级应用(自定义字体、显示多种颜色、添加阴影)

    1.    自定义字体可以使用setTypeface(Typeface)方法来设置文本框内文本的字体,而android的Typeface又使用TTF字体文件来设置字体所以,我们可以在程序中放入TTF字 ...

  2. 设置一个label显示多种颜色,多种字体大小

    UILabel* label = [[UILabel alloc] init]; label.frame = CGRectMake(0, 100, 200, 100); label.textColor ...

  3. Xshell配置是vi显示多种颜色

    在链接中,点 File菜单——properties   或按快捷键 alt+p 第一步: Properties--->Terminal 右边的窗口中,将Terminal Type 选择为linu ...

  4. android 一个TextView设置多种颜色

    时候一个文本框为了强调内容需要显示不同颜色,用以下代码可以轻松实现 方法一:(适用于颜色变化多的情况)   //为文本框设置多种颜色 textView=(TextView)findViewById(R ...

  5. [转载]Linux下终端字体颜色设置方法

    原文地址:Linux下终端字体颜色设置方法作者:router 网上类似的文章有很多,但是都是转来转去的,没有经过测试,按照很多文章的方法会造成你设置之后的终端在换行和删除输入字符时终端显示会乱七八糟, ...

  6. Colours–颜色库,包含100种预定义的颜色和方法

    简介 Colours–颜色库,包含各种100种预定义的颜色和方法,可以简化颜色相关的开发工作. 项目主页: Colours 最新示例: 点击下载 快速入门 安装 通过Cocoapods安装 pod ' ...

  7. NSString -- UILabel中字体有多种颜色,字符串自动计算高度/换行

    一:UILabel中字体有多种颜色 UILabel *label = [[UILabel alloc] init]; label.frame = CGRectMake(, , , ); label.b ...

  8. 面系那个对象开发原则.高内聚.低耦合+Python安装详细教程+print输出带颜色的方法

    面系那个对象开发原则.高内聚.低耦合 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 这是软件工程中的概念,是判断设计好坏的标准,主要是面向OO的设计, ...

  9. Android教程2020 - RecyclerView显示多种item

    Android教程2020 - 系列总览 本文链接 前面我们已经用RecyclerView显示一些数据.也知道如何获取滑动的距离. 前面我们的列表中显示的都是同类数据.如果要在一个列表中显示不同类别的 ...

随机推荐

  1. EasyUI 1.3之前DataGrid中动态选中、获取Checkbox

    这几天做项目,由于项目中用到的EasyUI版本过低,不能使用自带操作DataGrid中CheckBox的方法. 所以自己写了一个临时方案: 根据ID集合选中所属行的CheckBox: data={1, ...

  2. iframe中在父窗口打开子页面

    我们在做页面框架的时候,通常会采用一个iframe来显示子页面,但有这么种情况,就是session失效时,登录页面就会显示在iframe中,这不符合常理,一般应该显示在顶部才对. 下面的js代码可以解 ...

  3. 缓存淘汰算法---LRU

    1. LRU1.1. 原理 LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”. ...

  4. github的访问变慢了

    以下个人观点:把操作系统的自主研究还有处理器自主研究列入重点,还有互联网上的种种动作,我发现里面似乎揭示了某些迹象,科研真的不应该以牺牲大部分人的河法全益为代价甚至目的.当某一天win不可能出现在出厂 ...

  5. ASP.NET导出Excel(利用NPOI和EPPlus库,无需安装Office)

    网上提供了很多Asp.net中操作Excel的方法,其中大部分是调用微软的Office组件,下面提供三个无须安装Office即可从Asp.net输出Excel的方法. 1 简单方法 //下面代码输出的 ...

  6. mysql 修改max_allowed_packet

    -- 查询max_allowed_packetshow VARIABLES like '%max_allowed_packet%'; 修改 my.ini 或 my.cnf [mysqld] max_a ...

  7. BZOJ 1057 棋盘制作

    Description 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋.象棋以及日本的将棋同享盛名.据说国际象棋起源于易经的思想,棋盘是一个8*8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴 ...

  8. [BZOJ 3747] [POI 2015] Kinoman【线段树】

    Problem Link : BZOJ 3747 题解:ZYF-ZYF 神犇的题解 解题的大致思路是,当区间的右端点向右移动一格时,只有两个区间的左端点对应的答案发生了变化. 从 f[i] + 1 到 ...

  9. Following Orders

    uva124:http://uva.onlinejudge.org/index.php?option=onlinejudge&page=show_problem&problem=60题 ...

  10. Git初体验

    http://www.cnblogs.com/yejiurui/archive/2013/07/29/3223153.html