gpt4 book ai didi

ios - NSMutableAttributedString 知道哪个文本的颜色在哪里改变

转载 作者:行者123 更新时间:2023-11-28 21:49:36 27 4
gpt4 key购买 nike

我正在做类似 facebook 的标记功能,我已经可以标记用户了。我可以这样展示。它是由这段代码完成的。

NSMutableAttributedString * string = [[NSMutableAttributedString alloc]initWithString:self.textView.text];

for (NSString *word in self.tagNameCollection) {
[string addColor:[UIColor redColor] substring:word];
[string addBackgroundColor:[Helpers getFromRGB:135 green:206 blue:250] substring:word];
}

所以,我有 NSMutableAttributedString。我能知道我在哪里更改了 NSMutableAttributedString 的颜色、字体吗?我可以知道该怎么做吗?

enter image description here

最佳答案

您可以使用 enumerateAttributesInRange:options:usingBlock:获取 NSAttributedString 的属性。

例子:

[attributedString enumerateAttributesInRange:NSMakeRange(0, [attributedString length])
options:0
usingBlock:^(NSDictionary *attributes, NSRange range, BOOL *stop) {
if ([attributes objectForKey:NSForegroundColorAttributeName])
NSLog(@"Found ForeGround Color: %@ in range %@", [attributes objectForKey:NSForegroundColorAttributeName], NSStringFromRange(range));
if ([attributes objectForKey:NSFontAttributeName])
NSLog(@"Found Font: %@ in range %@", [attributes objectForKey:NSFontAttributeName], NSStringFromRange(range));
if ([attributes objectForKey:NSBackgroundColorAttributeName])
NSLog(@"Found Background Color: %@ in range %@", [attributes objectForKey:NSBackgroundColorAttributeName], NSStringFromRange(range));

}];

关于ios - NSMutableAttributedString 知道哪个文本的颜色在哪里改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28805683/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com