Скажем, я добавляю UITextView к моему UIView, и я хочу, чтобы он менял свой цвет фона при каждом изменении содержимого. Я могу сделать это, став делегатом UITextView и внедряя textViewDidChange.
Если я часто использую это поведение, имеет смысл создать подкласс UITextView, который я буду называть ColorSwitchingTextView. Он должен включать поведение переключения цвета по умолчанию, так что любой UIView может просто добавить его вместо стандартного UITextView, если он хочет этого поведения.
Как определить изменения в содержимом из моего класса ColorSwitchingTextView? Я не думаю, что могу сделать что-то вроде self.delegate = self.
В общем, как может подкласс UITextView знать, когда изменяется его содержимое?
ИЗМЕНИТЬ
Кажется, я могу использовать self.delegate = self, но это означает, что UIViewController, который использует ColorSwitchingTextView, также не может подписаться на уведомления. Когда я использую switchingTextView.delegate = self в контроллере представления, поведение подкласса больше не работает. Любые обходные пути? Я пытаюсь получить пользовательский UITextView, который в противном случае работает как обычный UITextView.