NSTextView setFormatter?
С NSTextField
мы можем легко позвонить setFormatter
если мы хотим сказать, например, создайте пользовательский форматер, который позволяет только числа (возьмем этот вопрос, например).
Но что, если мы хотим применить форматировщик к NSTextView
? Кажется, нет способа установить форматер, если я не пропускаю что-то.
Любые предложения о том, как обойти это?
1 ответ
NSFormatter
Предназначен для формата одной строки. Это намерение совпадает с NSTextField
который обычно показывает одну строку (особенно если используется форматтер).
Смысл форматера заключается в том, чтобы отформатировать существующий текст для отображения и проверить ввод текста от пользователя. Вы можете использовать форматтер с NSTextView
чтобы выполнить оба эти действия, вам просто нужно немного поработать самостоятельно, чтобы обработать текст, прежде чем добавить его в представление (stringForObjectValue:
) или когда пользователь вводит его (textView:shouldChangeTextInRange:replacementString:
а также isPartialStringValid:newEditingString:errorDescription:
).