IOS6 字体高亮显示

本文介绍如何使用 iOS6 中新增的 NSAttributedString 属性来实现文本的高亮显示、颜色更改等功能。通过实例展示了如何创建和应用 NSAttributedString 到 UITextView 中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[java]  view plain copy
  1.   
ios6之前在一个字符串中如果也让某个字体高亮或者特殊显示(如: 关注[ 101 ]),需要用单独一个的标签进行显示,或者利用CoreText进行字体绘绘制,非常麻烦;


现在IOS6 中TextView,label,textField中新增了这样的一个属性NSAttributedString  只能应用IOS6

[java]  view plain copy
  1. @property(nonatomic,copy) NSAttributedString *attributedText NS_AVAILABLE_IOS(6_0); // default is nil  

利用NSAttributedString构建一个新的属性字符串,你就可以对他进行操作,删除,增加,字体格式化,设置某个字符前景色,字体颜色等...

如上图所示,直接上代码


[java]  view plain copy
  1. - (void)setupTextView  
  2. {  
  3.     _textView = [[UITextView alloc] initWithFrame:self.view.frame];  
  4.     self.textView.textColor = [UIColor blackColor];  
  5.     self.textView.font = [UIFont fontWithName:@"Arial" size:18.0];  
  6.     self.textView.delegate = self;  
  7.     self.textView.backgroundColor = [UIColor whiteColor];  
  8.     self.textView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;  
  9.       
  10.     NSString *textToAdd = @"Now is the time for all good developers to come to serve their country.\n\nNow is the time for all good developers to come to serve their country.\r\rThis text view can also use attributed strings.";  
  11.       
  12.     NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:textToAdd];  
  13.   
  14.     // make red text  
  15.     [attrString addAttribute:NSForegroundColorAttributeName  
  16.                    value:[UIColor redColor]  
  17.                    range:NSMakeRange([attrString length] - 1919)];  
  18.       
  19.     // make blue text  
  20.     [attrString addAttribute:NSForegroundColorAttributeName  
  21.                        value:[UIColor blueColor]  
  22.                        range:NSMakeRange([attrString length] - 233)];  
  23.     [attrString addAttribute:NSUnderlineStyleAttributeName  
  24.                        value:[NSNumber numberWithInteger:1]  
  25.                        range:NSMakeRange([attrString length] - 233)];  
  26.       
  27.     [self.textView setAttributedText:attrString];  
  28.     
  29.     self.textView.returnKeyType = UIReturnKeyDefault;  
  30.     self.textView.scrollEnabled = YES;  
  31.   
  32.     [self.view addSubview:self.textView];  
  33. }  

NSForegroundColorAttributeName // 代表字体的前景色  下面所有进行字体格式化的标签

/* Predefined character attributes for text. If the key is not in the dictionary, then use the default values as described below.

 */

UIKIT_EXTERN NSString *const NSFontAttributeName NS_AVAILABLE_IOS(6_0);                // UIFont, default Helvetica(Neue) 12

UIKIT_EXTERN NSString *const NSParagraphStyleAttributeName NS_AVAILABLE_IOS(6_0);      // NSParagraphStyle, default defaultParagraphStyle

UIKIT_EXTERN NSString *const NSForegroundColorAttributeName NS_AVAILABLE_IOS(6_0);     // UIColor, default blackColor

UIKIT_EXTERN NSString *const NSBackgroundColorAttributeName NS_AVAILABLE_IOS(6_0);     // UIColor, default nil: no background

UIKIT_EXTERN NSString *const NSLigatureAttributeName NS_AVAILABLE_IOS(6_0);            // NSNumber containing integer, default 1: default ligatures, 0: no ligatures, 2: all ligatures (Note: 2 is unsupported on iOS)

UIKIT_EXTERN NSString *const NSKernAttributeName NS_AVAILABLE_IOS(6_0);                // NSNumber containing floating point value, in points; amount to modify default kerning. 0 means kerning is disabled. (note: values other than nil and 0 are unsupported on iOS)

UIKIT_EXTERN NSString *const NSStrikethroughStyleAttributeName NS_AVAILABLE_IOS(6_0);  // NSNumber containing integer, default 0: no strikethrough

UIKIT_EXTERN NSString *const NSUnderlineStyleAttributeName NS_AVAILABLE_IOS(6_0);      // NSNumber containing integer, default 0: no underline

UIKIT_EXTERN NSString *const NSStrokeColorAttributeName NS_AVAILABLE_IOS(6_0);         // UIColor, default nil: same as foreground color

UIKIT_EXTERN NSString *const NSStrokeWidthAttributeName NS_AVAILABLE_IOS(6_0);         // NSNumber containing floating point value, in percent of font point size, default 0: no stroke; positive for stroke alone, negative for stroke and fill (a typical value for outlined text would be 3.0)

UIKIT_EXTERN NSString *const NSShadowAttributeName NS_AVAILABLE_IOS(6_0);              // NSShadow, default nil: no shadow


/* An NSNumber containing an integer value.  0 means horizontal text.  1 indicates vertical text.  If not specified, it could follow higher-level vertical orientation settings.  Currently on iOS, it's always horizontal.  The behavior for any other value is undefined.

 */

UIKIT_EXTERN NSString *const NSVerticalGlyphFormAttributeName NS_AVAILABLE_IOS(6_0);



 
内容概要:《2024年中国城市低空经济发展指数报告》由36氪研究院发布,指出低空经济作为新质生产力的代表,已成为中国经济新的增长点。报告从发展环境、资金投入、创新能力、基础支撑和发展成效五个维度构建了综合指数评价体系,评估了全国重点城市的低空经济发展状况。北京和深圳在总指数中名列前茅,分别以91.26和84.53的得分领先,展现出强大的资金投入、创新能力和基础支撑。低空经济主要涉及无人机、eVTOL(电动垂直起降飞行器)和直升机等产品,广泛应用于农业、物流、交通、应急救援等领域。政策支持、市场需求和技术进步共同推动了低空经济的快速发展,预计到2026年市场规模将突破万亿元。 适用人群:对低空经济发展感兴趣的政策制定者、投资者、企业和研究人员。 使用场景及目标:①了解低空经济的定义、分类和发展驱动力;②掌握低空经济的主要应用场景和市场规模预测;③评估各城市在低空经济发展中的表现和潜力;④为政策制定、投资决策和企业发展提供参考依据。 其他说明:报告强调了政策监管、产业生态建设和区域融合错位的重要性,提出了加强法律法规建设、人才储备和基础设施建设等建议。低空经济正加速向网络化、智能化、规模化和集聚化方向发展,各地应找准自身比较优势,实现差异化发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值