我正在尝试为UITextView创建自定义拼写检查程序。
要显示单词拼写错误,我需要在拼写错误的单词下添加“红色虚线”。 要做到这一点,我认为这是有用的 -
我创建了一个字典,其中包含键NSUnderlineStyleAttributeName
的值。
但是,它的作用是,它确实为字符加下划线,但它没有点状图案。
另外,设置strokeColorAttribute也似乎没有任何效果。
这是我的代码 -
NSMutableDictionary *misspelledAttributes = [NSMutableDictionary dictionary];
[misspelledAttributes setObject:[NSNumber numberWithInt:kCTUnderlineStyleThick|kCTUnderlinePatternDot] forKey:NSUnderlineStyleAttributeName];
[misspelledAttributes setObject:[UIColor redColor] forKey:NSStrokeColorAttributeName];
将属性设置为特定范围的属性字符串 -
NSMutableAttributedString *attrString = [self.textView.attributedText mutableCopy];
[attrString addAttributes:misspelledAttributes range:wordRange];
如果有人可以帮我解决这个问题并指出我错过了什么/做错了会很棒。
答案 0 :(得分:1)
我认为你必须找到NSAttributedString以外的方法。
据我所知,iOS中NSUnderlineStyleAttributeName唯一的值选择是NSUnderlineStyleNone或NSUnderlineStyleSingle,它们代表数字。
NSUnderlineColorAttributeName似乎只是Mac OS。