开发者社区 问答 正文

NSAttributedString 链接如何指定多种颜色?

想在 AttributedString 里多个链接给予不同的颜色,如何实现?

    NSString *str = @"红色 , 蓝色 , 绿色";
    NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:str attributes:nil];

    [attributeString addAttribute:NSLinkAttributeName value:@"1" range:[str rangeOfString:@"红色"]];
    [attributeString addAttribute:NSLinkAttributeName value:@"1" range:[str rangeOfString:@"蓝色"]];
    [attributeString addAttribute:NSLinkAttributeName value:@"1" range:[str rangeOfString:@"绿色"]];
然后用 NSForegroundColorAttributeName 还是改变不了链接的颜色:

[attributeString addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:[str rangeOfString:@"红色"]];
这样也不行:

[attributeString addAttributes:@{NSForegroundColorAttributeName:[UIColor redColor], NSL

展开
收起
a123456678 2016-07-27 16:18:11 3678 分享 版权
1 条回答
写回答
取消 提交回答
  • [attributeString setAttributes:@{NSForegroundColorAttributeName:[UIColor redColor], NSLinkAttribu
    2019-07-17 20:00:48
    赞同 展开评论
问答地址: