Closed Alelenka closed 3 years ago
Давай я про пробелы и emoji еще отдельно подумаю.
Насчет пробелов - мне не нравится идея использовать InputMask ради такого, потому что
afterChanges
, когда ошибки высвечиваются после первого изменения или же после первой валидации текста. Если использовать маски, и это будет, к примеру, маска для телефона - то при установке фокуса текст изменится на "+7" какой-нибудь предзаполненный - и это будет считаться изменением. И когда мы фокус снимем - даже если поле ввода очистится, то оно подсветится ошибкой, пусть даже изменений и не было. Кажется, с удалением пробелов там такая же потеха должна бытьНасчет emoji - сейчас у меня на проекте есть кейс с ними, там не все так гладко) я еще раз погляжу, что у нас за решение и с какой оси оно доступно. Ну и тестами это по-хорошему обложить)
есть еще мысли как улучшить работу trimSpaces - пойдет в следующий релиз
После #99
Что сделано
MaskedTextFieldDelegate
можно передавать свой, или не передавать и будет работать созданный по умолчанию - кастомизация MaskedTextFieldDelegate позволит редактировать вставляемый текст в поле сmaskFormatter
!= nil - так как он (maskFormatter
) перехватывает и первым обрабатывает ввод в полеtextField
иtextView
добавлен параметрtrimSpaces
- после того как поле становится неактивным - обрезает пробелы и переходы на новую строку (по умолчанию false)Подумать
customNotation
дляmaskFormatter
- стоит ли создавать ее по умолчанию - если нам может понадобится ограничивать ввод чем то дополнительным - или же идея что у нас по мере ввода будут проверяться еще и пробелы допом? (но вообще в целом кажется избыточным если делается все недолго)Unicode.Scalar
есть параметрisEmoji
, но доступно оно только с ios 10.2 - будем поднимать? если да - то так же можно добавить параметрclearEmojis
например и так же как с пробелами доработатьКак проверить
Самый быстрый способ - прописать по умолчанию
trimSpaces = true
и запустить приложение примеров