我已经完成了以下操作,为我的NIAttributedLabel中的链接添加了不同的颜色:
NSMutableDictionary *attributes = [NSMutableDictionary dictionary];
[attributes setValue:[UIColor colorWithRed:86.0/255.0 green:134.0/255.0 blue:172.0/255.0 alpha:1.0] forKey:NSForegroundColorAttributeName];
[attributes setValue:[UIColor colorWithRed:0.0 green:136/255.f blue:204/255.f alpha:1.0] forKey:NSForegroundColorAttributeName];
[self.commentsText_ setAttributesForLinks:attributes];
但我没有在链接中看到两种不同的颜色,而是我只看到一种颜色。我在这做错了什么?基本上我有一个链接,我通过addLink添加如下:
[self.commentsText_ addLink:[NSURL URLWithString:url] range:usernameRange];
我想让它有redColor。我该怎么做?
答案 0 :(得分:1)
如果您想为不同的链接使用不同的颜色,则需要创建单独的属性词典,并使用不同的词典调用setAttributesForLinks:
NSMutableDictionary *attributes1 = [NSMutableDictionary dictionary];
[attributes setValue:[UIColor colorWithRed:86.0/255.0 green:134.0/255.0 blue:172.0/255.0 alpha:1.0] forKey:NSForegroundColorAttributeName];
[self.commentsText1_ setAttributesForLinks:attributes1];
NSMutableDictionary *attributes2 = [NSMutableDictionary dictionary];
[attributes setValue:[UIColor colorWithRed:0.0 green:136/255.f blue:204/255.f alpha:1.0] forKey:NSForegroundColorAttributeName];
[self.commentsText2_ setAttributesForLinks:attributes2];
答案 1 :(得分:1)
如果您想为不同的链接设置不同的颜色,则应通过将linkColor设置为nil来禁用自动链接样式,然后将不同的样式明确应用于链接。