Повторное использование реализации методов делегата UITextField
В моем приложении я хочу использовать UITextField несколько раз. И для каждого из этого UITextField я хочу реализовать методы UITextFieldDelegate (didEndEditing, didBeginEditing, должен...).
Моя идея состояла в том, чтобы создать подкласс UITextField и установить делегата для себя. Затем реализуем методы делегата так, как я хочу, чтобы они были реализованы. В этом случае я мог бы использовать подкласс UITextField в любом месте, и методы делегата будут реализованы один раз, поэтому мне не придется реализовывать их в каждом VC отдельно.
НО!
Делегирование используется для связи с другим объектом, чтобы делегировать некоторые вещи этому объекту. Нет смысла устанавливать делегата на себя.
Как мне реализовать методы делегата ONCE, чтобы каждый раз, когда я размещал UITextField с помощью Interface Builder и устанавливал класс в пользовательский UITextField, текстовое поле будет вести себя согласно реализованным методам делегата.
Спасибо за вашу помощь
1 ответ
Мое решение может быть неоптимальным, и я все еще ищу лучшее, но никто не отвечает вам, вот и мы:
UIView
Никогда не пытайтесь "контролировать" что-либо: это просто вид. Вот почему через мои проекты, все мои UIViewController
наследовать от базы UIViewController
(BaseViewController
). это BaseViewController
имеет все UITextField
код делегирования, поэтому всякий раз, когда UIViewController
установить UITextField
делегировать self
, BaseViewController
обрабатывает это. Потому что я хочу мой BaseViewController
чтобы иметь возможность контролировать все мое мнение UIScrollView
смещение контента, у меня тоже есть базовый класс BaseView
что все мои UIViews
наследуют, то есть имеют по умолчанию UIScrollview
,