在项目开发中,我们经常会遇到在这样一种情形:在一个UILabel 使用不同的颜色或不同的字体来体现字符串,在iOS 6 以后我们可以很轻松的实现这一点,官方的API 为我们提供了UILabel类的attributedText, 使用不同颜色和不同字体的字符串,我们可以使用NSAttributedText 和 NSMutableAttributedText 类来实现。现实代码:
@interface ViewController : UIViewController
@property (nonatomic, strong) IBOutlet UILabel *attrLabel;
- (IBAction)next:(id)sender;
@end.m文件 在viewDidLoad方法中添加以下代码:
self.title = @"For iOS 6 & later";
NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"Using NSAttributed String"];
[str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0,5)];
[str addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(6,12)];
[str addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:NSMakeRange(19,6)];
[str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial-BoldItalicMT" size:30.0] range:NSMakeRange(0, 5)];
[str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:30.0] range:NSMakeRange(6, 12)];
[str addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Courier-BoldOblique" size:30.0] range:NSMakeRange(19, 6)];
attrLabel.attributedText = str;

NSString *const NSForegroundColorAttributeName;//值为UIColor,字体颜色,默认为黑色。
NSString *const NSBackgroundColorAttributeName;//值为UIColor,字体背景色,默认没有。
NSString *const NSLigatureAttributeName;//值为整型NSNumber,连字属性,一般中文用不到,在英文中可能出现相邻字母连笔的情况。0为不连笔;1为默认连笔,也是默认值;2在ios 上不支持。
NSString *const NSKernAttributeName;//值为浮点数NSNumber,字距属性,默认值为0。
NSString *const NSStrikethroughStyleAttributeName;//值为整型NSNumber,可取值为enum {NSUnderlineStyleNone = 0×00,NSUnderlineStyleSingle = 0×01,};设置删除线。NSString *const NSUnderlineStyleAttributeName;//同上。设置下划线。
NSString *const NSStrokeColorAttributeName;//值为UIColor,默认值为nil,设置的属性同ForegroundColor。
NSString *const NSStrokeWidthAttributeName;//值为浮点数NSNumber。设置比画的粗细。
NSString *const NSShadowAttributeName;//值为NSShadow,设置比画的阴影,默认值为nil。
NSString *const NSVerticalGlyphFormAttributeName;//值为整型NSNumber,0为水平排版的字,1为垂直排版的字。

转载于:https://www.cnblogs.com/niit-soft-518/p/4501107.html

NSMutableAttributedString iOS 在UILabel显示不同的字体和颜色(转)相关推荐

  1. iOS 在UILabel显示不同的字体和颜色(转)

    转自:http://my.oschina.net/CarlHuang/blog/138363 在项目开发中,我们经常会遇到在这样一种情形:在一个UILabel 使用不同的颜色或不同的字体来体现字符串, ...

  2. C语言控制台窗口界面编程:printf格式化显示-修改字符字体、颜色和背景

    环境:cygwin-Linux+GCC PS:windows的cmd下不能实现. 在linux终端中一个ls指令得出的显示结果文件夹.文件以及不同操作权限的文件的显示颜色是不同的,那么这个是如何实现的 ...

  3. bootstrap-table.js如何根据单元格数据不同显示不同的字体的颜色

    在bootstrap-table.js里面列属性 formatter就是用来格式化单元格的,其默认值是undefined 类型是function,function(value,  row, index ...

  4. Markdown语法003:斜体和粗体、红色显示及其他字体颜色

    Markdown语法003:斜体和粗体.红色显示及其他字体颜色 1. 粗体和斜体 2. 快捷键实现粗体和斜体 3. 红色显示 4. 其他字体和颜色 1. 粗体和斜体 Markdown 的粗体和斜体也非 ...

  5. android button 中文字位置设置,iOS开发-- 设置UIButton的文字显示位置、字体的大小、字体的颜色...

    btn.frame = CGRectMake(x, y, width, height); [btn setTitle: @"search" forState: UIControlS ...

  6. Unity3D之NGUI基础3:UILabel显示字体

    前文:https://blog.csdn.net/Jaihk662/article/details/86772085(使用NGUI) 一.字体图集与TTF字体 字体图集:将所用到的文字处理成一张图片进 ...

  7. iOS自学-UILabel常见属性

    #import "ViewController.h" #import <CoreText/CoreText.h>@interfaceViewController ()@ ...

  8. IOS之UILabel富文本

    NSMutableAttributedString *fruitPrice = [[NSMutableAttributedStringalloc]initWithString:@"16.99 ...

  9. Xamarin iOS教程之显示和编辑文本

    Xamarin iOS教程之显示和编辑文本 Xamarin iOS显示和编辑文本 在一个应用程序中,文字是非常重要的.它就是这些不会说话的设备的嘴巴.通过这些文字,可以很清楚的指定这些应用程序要表达的 ...

最新文章

  1. 关于Ubuntu 安装tftp服务器的问题解决
  2. 干货 | 解读MySQL 8.0新特性:Skip Scan Range
  3. 长沙.NET技术社区·设计到实现
  4. 谷歌浏览器调用本地exe_无需修改前端和后端代码本地跨域开发设置
  5. 1.9.2(2) 使用文件及文件组.sql
  6. 服务器常用陈列raid0,raid1,raid5,raid10(0+1)详解及区别
  7. 怎么把GMS的软件转到HMS?
  8. [转载] python 字典的get()pop()方法的区别
  9. linux 新老软件切换,Linux下非常重要的软件切换命令
  10. c语言注释部分两侧的分界符号分别是,C语言习题及解答.doc
  11. java读取Excel文件并各方案对比
  12. 空中网创始人杨宁:忽悠就是融资能力
  13. [Windows] 迅雷 无修改 无限制 无视封锁
  14. 教你如何将小视频转发到自己的朋友圈
  15. 解决 configure.ac: error: possibly undefined macro: AC_PROG_LIBTOOL
  16. python笔记-Pygame详解(十七):joystick 模块
  17. 人月神话(各章精选)
  18. stata怎么画分类图_掌握Stata这几种常见功能,让统计图案绘制更加精美
  19. 串的基本操作及统计字符频度-数据结构类C语言
  20. Geogebra 教程之 02 Geogebra初学者的 8 个基本要素

热门文章

  1. JavaWeb前端学习
  2. 使CPU利用率跑高的脚本致使服务器死机
  3. ROHM | 开发出隔离型DC-DC转换器“BD7Fx05EFJ-C”
  4. 论文:Language-Aware Fine-Grained Object Representation for Referring Expression Comprehension
  5. Vue中的双击事件 @dblclick= v-on:dblclick=
  6. 时序算法交叉验证法python实现
  7. aiohttp mysql_aiohttp 怎么复用连接池
  8. python3.9 aiohttp
  9. 奥德装备冲刺深交所:年营收5亿 周定山控制79%股权
  10. 爬取搜狗微信文章笔记1