Я пишу свое первое приложение для iPhone и изучаю шаблоны проектирования в Cocoa Touch и Objective -C. У меня есть опыт веб-разработки на стороне клиента, поэтому я пытаюсь осмыслить делегатов.
В частности, я не понимаю, зачем нужны объекты-делегаты вместо обработчиков событий. Например, когда пользователь нажимает кнопку, это обрабатывается событием ( UITouchUpInside
), но когда пользователь заканчивает ввод в текстовое поле и закрывает его с помощью кнопки «Готово», действие обрабатывается. вызывая метод делегата текстового поля ( textFieldShouldReturn
).
Зачем использовать метод делегата вместо события? Я также заметил это в контроллере представления с помощью метода viewDidLoad
. Почему бы просто не использовать события?