ALL,
NSMutableDictionary* constattrs = [NSMutableDictionary dictionaryWithCapacity:5];
[attrs setObject:[NSNumber numberWithInt:( NSUnderlinePatternDot )] forKey:NSUnderlineStyleAttributeName];
[attrs setValue:style.GetUnderlineColour() forKey:NSUnderlineColorAttributeName];
[m_textView setTypingAttributes:attrs];
Приведенный выше код прекрасно компилируется и выполняется, но текст в представлении не становится подчеркнутым.
Я тестирую под OSX 10.13 с минимумом, необходимым для10.9.
Чего мне не хватает?
TIA!
[EDIT]:
NSRange range = NSMakeRange(start, end-start);
NSTextStorage* storage = [m_textView textStorage];
if( style.HasFontUnderlined() )
{
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setObject:[NSNumber numberWithInt:( NSUnderlinePatternDot )] forKey:NSUnderlineStyleAttributeName];
[dict setValue:style.GetUnderlineColour() forKey:NSUnderlineColorAttributeName];
[storage addAtributes:dict range:range];
[dict release];
Я получаю предупреждение о компиляции с кодом выше:
warning: instance method '-addAtributes:range:' not found (return type defaults to 'id'); did you mean '-addAttributes:range:'? [-Wobjc-method-access]
Вы можете помочь?
[/ EDIT]