Модальный переход раскадровки с делегатом

Я сделал приложение, использующее этапы раскрутки iOS6, не понимая, что их нет в iOS5, и поэтому я разбираю его, чтобы поддерживать iOS5. До сих пор я понял, что мне нужно использовать делегатов, чтобы вернуть информацию в мое корневое представление из модального представления перехода и иметь пару хороших примеров для подражания, и я спокойно уверен, что понял это.

В настоящее время модальный переход генерируется через раскадровку, а не через код.

Чтобы установить его делегат в качестве моего корневого представления, мне нужно будет сгенерировать его с помощью кода или есть способ через раскадровки?


person Matt Stuttard Parker    schedule 09.11.2012    source источник


Ответы (1)


Перед выполнением перехода программа вызовет метод - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender в sourceViewController (контроллер представления, вызывающий переход). В этом методе вы можете указать targetViewController ссылку на себя:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    [segue.destinationViewController setDelegate:self];
}

Конечно, вам нужно свойство в destinationViewController:

@property (weak, nonatomic) id<yourProtocol> delegate;

Надеюсь, поможет.

person pedros    schedule 09.11.2012
comment
Я подумал и попробовал это сначала без радости, попробовал еще раз и сработало, должно быть, была опечатка в идентификаторе перехода. Спасибо! :) - person Matt Stuttard Parker; 09.11.2012
comment
Рад помочь. Любой вопрос, пожалуйста, спросите. - person pedros; 09.11.2012
comment
может быть неправильно, но разве это не должно быть id<yourProtocol> delegate;? - person Tyler; 02.07.2013