2011-01-13 1 views
1

Я настройке NSTextView программно:Как работает метод NSTextView automaticLinkDetectionEnabled?

NSTextView *infoTextView = [[NSTextView alloc] initWithFrame:insetRect]; 
[infoTextView setAutoresizingMask:NSViewWidthSizable|NSViewHeightSizable]; 
    [infoTextView setBackgroundColor:[NSColor clearColor]]; 
    [infoTextView setTextContainerInset:NSZeroSize]; 
    [infoTextView setEditable:YES]; 
    [infoTextView setSelectable:YES]; 
    [infoTextView setAutomaticLinkDetectionEnabled:YES]; 

Я нацеливание 10.6, и подумал, что automaticLinkDetectionEnabled означает, что, когда пользователь вводит строку, которая была адрес веб-сайта, NSTextView бы форматировать его синий цвет, подчеркнутый , и сделать его кликабельной ссылкой. этого не происходит. его просто читают как обычный текст. У меня нет форматирования в textStorage textView.

док читает:

'Автоматическое определение ссылку вызывает строки, представляющие URL-адреса, введенные в целях автоматически превращено ссылки на эти URL-адреса.

Что еще мне нужно делать?

ответ

0

отвечая на мой собственный вопрос в случае, если есть кто-то на планете, который сделал ту же ошибку я сделал:

в приложении ядро ​​данных, со свойством «отмечает», как и в Entity.notes, если вы задавать записи как двоичный тип, а затем использовать привязку IB для привязки NSTextView для AttributedString (не использовать привязку значений) и использовать встроенный NSTransformer: NSKeyedUnarchiveFromData, флажки в Inspector for Smart Links и др., работают для настройки автоматического обнаружения каналов. вы можете сделать это программно.

У меня было свойство моих заметок как «строка», а также было обязательным для «значения».

двойной d'ой .....

3

После того как текст установлен сделать:

[infoTextView checkTextInDocument:nil]; 

Это будет пройти через весь текст в окне и преобразовать любой URL, чтобы ссылки в этой точке ,