Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Делегаты - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Ввод и вывод из файла http://www.cyberforum.ru/objective-c/thread1112180.html
Всем добрый вечер! Начал изучать этот замечательный язык неделю назад, записался на мастер-класс и мне прислали тестовое задание. Задание само по себе не сложное, но вот с реализацией возникла...
Objective-C Стили для кнопки Добрый день. Попробовал положить в фон изображение для кнопки- в состоянии NORMAL- всё впорядке, но при наведении кнопка "растворяется" (как любая кнопка в iOs7). Подскажите как убрать это. Чтобы я... http://www.cyberforum.ru/objective-c/thread1111591.html
Добавить рекламный банер в UINavigationBar Objective-C
Доброго времени суток! Есть желание добавить рекламный банер сразу под UINavigationBar. Преимущество будет в том что при переходе с одного контролера на другой банер будет все так же продолжать...
Objective-C Кнопки Action Sheet
Всем привет! Пытаюсь привязать allert ко второй кнопке сверху (называется- "Кнопка"). Ко всем привязал, к этой не могу- подскажите, где ошибся-показывается? Пишет сообщение от третьей! -...
Objective-C Как передавать данные между контроллерами Tab Bar-a http://www.cyberforum.ru/objective-c/thread1109486.html
Как передавать данные между контроллерами Tab Bar и отслеживать нажатие кнопки например в первом контроллере чтоб менять badge второго Есть вроде для этого дела UITabBarController Delegate и методы....
Objective-C Как прочитать изображение в массив Здравствуйте, у меня один не разрешимый вопрос. Мне нужно обычное изображение прочитать в массив для дальнейшего его преобразования? Допустим есть полностью белая картинка и где-нибудь там будет один... подробнее

Показать сообщение отдельно
noname_club
103 / 94 / 10
Регистрация: 01.05.2013
Сообщений: 598
09.03.2014, 17:56
Цитата Сообщение от Vorona Посмотреть сообщение
нужны, грубо говоря, для колбеков, для оповещения о каком-то результате, пока вы заняты чем-то другим
ооо помедленнее

сам паттерн назвается Шаблон делегирования

В ObjC есть еще такое слово как "протокол", который на самом деле представляет из себя абстрактный класс. (то есть названия методов есть , а их реализации нет)

Любое делегирование идет по методам этого "протокола". Однако есть еще анонимное делегирование, то есть вызываем селектор без проверки что он там вообще есть.

Наверно самое частое использование этого паттерна конкретно в приложениях IOS принадлежит компоненту UITableView которому назначается делегирование по 2 протоколам

Objective-C
1
2
_table.delegate = self;
_table.dataSource = self;
вот эти 2 строки назначают делегирование где self это объект которому таблица будет посылать сообщения по протоколу.

UITableViewDelegate

UITableViewDataSource

и таким образом если понять как работает таблица, то можно понять как работает делегирование.

можно рассмотреть еще сам вызов селекторов

Objective-C
1
 if ([_delegate respondsToSelector:@selector(blabla)]) [_delegate performSelector:@selector(blabla) withObject:Object];
эта сама общая конструкция при вызове селектора у делегируемого объекта (_delegate)

Проверяем что это селектор там есть и потом вызываем его.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru