Делегаты и события в Cocoa Touch

Я пишу свое первое приложение для iPhone и изучаю шаблоны проектирования в Cocoa Touch и Objective -C. У меня есть опыт веб-разработки на стороне клиента, поэтому я пытаюсь осмыслить делегатов.

В частности, я не понимаю, зачем нужны объекты-делегаты вместо обработчиков событий. Например, когда пользователь нажимает кнопку, это обрабатывается событием ( UITouchUpInside ), но когда пользователь заканчивает ввод в текстовое поле и закрывает его с помощью кнопки «Готово», действие обрабатывается. вызывая метод делегата текстового поля ( textFieldShouldReturn ).

Зачем использовать метод делегата вместо события? Я также заметил это в контроллере представления с помощью метода viewDidLoad . Почему бы просто не использовать события?

5
задан bryanmac 15 November 2012 в 23:57
поделиться