NSTextView setFormatter?

С NSTextField мы можем легко позвонить setFormatter если мы хотим сказать, например, создайте пользовательский форматер, который позволяет только числа (возьмем этот вопрос, например).

Но что, если мы хотим применить форматировщик к NSTextView? Кажется, нет способа установить форматер, если я не пропускаю что-то.

Любые предложения о том, как обойти это?

1 ответ

Решение

NSFormatter Предназначен для формата одной строки. Это намерение совпадает с NSTextField который обычно показывает одну строку (особенно если используется форматтер).

Смысл форматера заключается в том, чтобы отформатировать существующий текст для отображения и проверить ввод текста от пользователя. Вы можете использовать форматтер с NSTextView чтобы выполнить оба эти действия, вам просто нужно немного поработать самостоятельно, чтобы обработать текст, прежде чем добавить его в представление (stringForObjectValue:) или когда пользователь вводит его (textView:shouldChangeTextInRange:replacementString: а также isPartialStringValid:newEditingString:errorDescription:).

Другие вопросы по тегам