Вот мой код:
let maskedDelegate = MaskedTextFieldDelegate(primaryFormat: "[0000] [0000] [0000] [0000]")
textField.delegate = maskedDelegate
При вводе текста не применяется маска, но метод maskedDelegate.put
работает.
Использую Carthage, если это имеет значение.
Привет @Recouse! Спасибо за вопрос.
Вот первое, что мне приходит в голову.
textField.delegate
— слабая ссылка, и объект maskedDelegate
будет деаллоцирован сразу после присваивания (если ссылка на него не хранится где-то ещё, конечно).
В этом случае можно вынести maskedDelegate
в качестве поля другого класса. Например, текущего контроллера, если используется простой MVC.
@taflanidi, спасибо. Опять забыл про это.
Most helpful comment
Привет @Recouse! Спасибо за вопрос.
Вот первое, что мне приходит в голову.
textField.delegate
— слабая ссылка, и объектmaskedDelegate
будет деаллоцирован сразу после присваивания (если ссылка на него не хранится где-то ещё, конечно).В этом случае можно вынести
maskedDelegate
в качестве поля другого класса. Например, текущего контроллера, если используется простой MVC.