ABPeoplePicker Делегат шаблон вопроса - PullRequest
0 голосов
/ 20 февраля 2010

У меня есть подкласс UIViewController, который действует как делегат контроллера навигации ABPeoplePicker. Этот контроллер представления вызывает этот ABPeoplePicker в нескольких различных ситуациях, и проблема, с которой я сталкиваюсь, состоит в том, чтобы выяснить, на какую ситуацию я отвечаю в

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person

UIAlertView имеет свойство тега, унаследованное от UIView, чтобы помочь разобраться в этом, но я не могу найти аналогичное свойство для использования в ABPeoplePickerNavigationController. Как ниндзя-какао справляются с подобными ситуациями? Выделить пользовательских делегатов? Возьмите некоторые BOOL в подкласс контроллера вида?

1 Ответ

0 голосов
/ 20 февраля 2010

По сути, у вас есть какой-то штат, и вы спрашиваете, где он находится, верно? К сожалению, ответ: «Это действительно зависит от государства».

Если это связано с работой контроллера представления, я бы сказал, что вставьте его туда и оставьте контроллер представления в качестве делегата.

Если это на самом деле не связано, и весь делегат может быть перемещен в отдельный объект, это может в конечном итоге стать намного чище. Получить действительно кошмарные контроллеры длиной в сотни строк десятками и десятками методов действительно легко. Разделение объектов на несколько объектов и использование шаблона композиции может быть очень полезным.

...