zoukankan      html  css  js  c++  java
  • iOS

    代码如下

    
       NSMutableAttributedString *hintString=[[NSMutableAttributedString alloc]initWithString:@"(故障)"];
            NSRange range1=[[hintString string]rangeOfString:@"()"];
            [hintString addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor] range:range1];
            NSRange range2=[[hintString string]rangeOfString:@"故障"];
            [hintString addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:range2];
            //下面是需要给哪个lable进行赋值
            self.lblDpfStatus.attributedText = hintString;
    
    

    封装成工具类

    
    #import <UIKit/UIKit.h>
    @interface NSObject (Tool)
    
    -(NSAttributedString *)setString:(NSString *)str withColorOneStr:(NSString *)oneStr andColorOne:(UIColor *)colorOne andColorTwoStr:(NSString *)twoStr andColorTwo:(UIColor *)colorTwo;
    
    @end
    
    //.m文件中
    
    #import "NSObject+Tool.h"
    
    @implementation NSObject (Tool)
    
    -(NSAttributedString *)setString:(NSString *)str withColorOneStr:(NSString *)oneStr andColorOne:(UIColor *)colorOne andColorTwoStr:(NSString *)twoStr andColorTwo:(UIColor *)colorTwo{
        
        NSMutableAttributedString *hintString=[[NSMutableAttributedString alloc]initWithString:str];
        NSRange range1=[[hintString string]rangeOfString:oneStr];
        [hintString addAttribute:NSForegroundColorAttributeName value:colorOne range:range1];
        NSRange range2=[[hintString string]rangeOfString:twoStr];
        [hintString addAttribute:NSForegroundColorAttributeName value:colorTwo range:range2];
        return hintString;
    }
    
    @end
    
    

    测试工具类

    
    - (void)viewDidLoad {
        
        [super viewDidLoad];
        UILabel * lbl = [[UILabel alloc] initWithFrame:CGRectMake(0, 100, 100, 35)];
        lbl.text = @"hello world";
        lbl.attributedText = [self setString:lbl.text withColorOneStr:@"hello" andColorOne:[UIColor orangeColor] andColorTwoStr:@"w" andColorTwo:[UIColor redColor]];
        [self.view addSubview:lbl];
    }
    
    

    测试结果如下

    设置的字符串必须是连续的否则无效如图

  • 相关阅读:
    memcache的最佳实践方案。
    ehcache memcache redis 三大缓存男高音
    微服务-----(网站架构演变)
    分布式job-任务调度(一)
    rocketmq(三 java操作rocket API, rocketmq 幂等性)
    rocketMQ(二 )Centos7 集群
    go基础三 数组,切片,map,list
    go语言基础二 函数 ,递归函数 ,指针
    go语言基础一:数据类型,变量和常量,类型转化
    Spring AOP 学习(一) 代理模式
  • 原文地址:https://www.cnblogs.com/adampei-bobo/p/6292930.html
Copyright © 2011-2022 走看看