如何在 TTTAtributedLabel 中设置范围的背景颜色
Posted
技术标签:
【中文标题】如何在 TTTAtributedLabel 中设置范围的背景颜色【英文标题】:how to set background color of range in TTTAtributedLabel 【发布时间】:2014-05-27 14:43:18 【问题描述】:不知道如何设置范围的背景颜色以使其看起来像荧光笔
下面的黄色不显示为背景色
NSArray *keys = [[NSArray alloc] initWithObjects:(id)kCTForegroundColorAttributeName,(id)kCTUnderlineStyleAttributeName, (id) NSBackgroundColorAttributeName, nil];
NSArray *objects = [[NSArray alloc] initWithObjects:[UIColor redColor],[NSNumber numberWithInt:kCTUnderlineStyleNone], [UIColor yellowColor], nil];
NSDictionary *linkAttributes = [[NSDictionary alloc] initWithObjects:objects forKeys:keys];
self.madLibLabel.linkAttributes = linkAttributes;
[self.madLibLabel addLinkToURL:[NSURL URLWithString:@"what://"] withRange:[self.madLibLabel.text rangeOfString:@"WHAT"]];
【问题讨论】:
【参考方案1】:您应该使用kTTTBackgroundFillColorAttributeName
键而不是NSBackgroundColorAttributeName
。
这里是sn-p的代码:
NSArray *keys = [[NSArray alloc] initWithObjects:(id)kCTForegroundColorAttributeName,(id)kCTUnderlineStyleAttributeName, (id) kTTTBackgroundFillColorAttributeName, nil];
NSArray *objects = [[NSArray alloc] initWithObjects:[UIColor redColor],[NSNumber numberWithInt:kCTUnderlineStyleNone], [UIColor yellowColor], nil];
NSDictionary *linkAttributes = [[NSDictionary alloc] initWithObjects:objects forKeys:keys];
self.madLibLabel.linkAttributes = linkAttributes;
[self.madLibLabel addLinkToURL:[NSURL URLWithString:@"what://"] withRange:[self.madLibLabel.text rangeOfString:@"WHAT"]];
【讨论】:
以上是关于如何在 TTTAtributedLabel 中设置范围的背景颜色的主要内容,如果未能解决你的问题,请参考以下文章