在UITextView中的字符下添加虚线红线

时间:2012-11-15 22:30:07

标签: ios6 uitextview spell-checking

我正在尝试为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]; 

如果有人可以帮我解决这个问题并指出我错过了什么/做错了会很棒。

1 个答案:

答案 0 :(得分:1)

我认为你必须找到NSAttributedString以外的方法。

据我所知,iOS中NSUnderlineStyleAttributeName唯一的值选择是NSUnderlineStyleNone或NSUnderlineStyleSingle,它们代表数字。

NSUnderlineColorAttributeName似乎只是Mac OS。