UITextField与attributesstring无法正常工作

时间:2017-10-11 14:53:45

标签: ios objective-c uitextfield nsattributedstring

我的应用中有一个UITextField,其中包含一些用户输入的文字,并突出显示存储在系统中的标签,以使它们像按钮一样。我编写了下面的代码来执行存储文本:

- (NSAttributedString *)parsedText:(NSString *)storedText {
    NSMutableAttributedString *gorgeous = [[NSMutableAttributedString alloc]  initWithString:storedText];
    NSArray *words = [storedText componentsSeparatedByString:@" "];
    for (int i = 0; i < [words count]; i++) {
        NSString *word = [words objectAtIndex:i];
        if ([word isTag]) {
            [gorgeous addAttribute:NSBackgroundColorAttributeName
                                    value:[UIColor yellowColor]
                                    range:NSMakeRange([gorgeous.mutableString rangeOfString:word].location, [word length])];
        }
    }

    return gorgeous;
}

然后我将其分配给UITextField,如下所示:

self.textField.attributedText = [self parsedText:storedText];

这就像一个魅力。但是,当我开始在文本字段中输入时,该文本也会变为黄色。这不应该发生。任何想法如何解决?

0 个答案:

没有答案