Маска ввода для телефона на Swift
Чтобы сделать хорошую маску ввода для телефона на Swift не нужно ставить какие-то библиотеки или пакеты, достаточно воспользоваться родным функционалом этого языка программирования дабы получить требуемый результат.
Создаем маску ввода для телефона на Swift
Пользовательский ввод из TextField является текстом, так что давайте просто “расширим” существующий функционал типа String новым методом, который будет трансформировать пользовательский ввод так, как это нужно нам:
Пример использования этой функции можно увидеть на скриншоте ниже:
Все символы # будут заменены на пользовательский ввод, а поставленные вами другие символы и пробелы будут учтены. Попробуйте сами и убедитесь.
Если Вас смущает то, что в текстовое поле можно набирать не только числа, вы всегда можете добавить регулярное выражение в код для его очистки или воспользоваться фильтром как-то так:
let clear = text.filter { "0123456789".contains($0) }
let result = clear.formatUserInput(pattern: "##-##-##")
На этом все, копируйте репозиторий и пользуйтесь с удовольствием.
Оставьте комментарий