Когда ваше приложение запускается, оно создает экземпляр UIApplication
. Вы хотите знать то, что знает только объект UIApplication
(мы просто переключились на фон? Мы только что открылись?), Поэтому вы используете шаблон делегата, чтобы получить его. Когда вы начинаете новый проект, Apple запускает вас уже назначенным делегатом приложения. Вы можете открыть MainWindow.nib
и осмотреть своего делегата приложения, чтобы увидеть, как он подключен к вашему экземпляру UIApplication (в данном случае - к владельцу файла).
Как правило, вы хотите поместить туда только код, связанный с основными функциями вашего приложения. Запуск, выход, переход в фоновый режим и переход на передний план - это когда вы будете делать что-то в App Delegate.
Большинство всего остального должно идти в ваших контроллерах представления или модельных объектах. Поскольку «делегат» - это просто шаблон проектирования, ваши контроллеры представлений могут быть делегатами других объектов. Например, если вы представите UITableView
, вы назначите контроллер представления в качестве его делегата для ответа на такие события, как выбор и прокрутка. В вашем приложении много делегатов, но есть только один делегат приложения.