Как установить делегата с раскадровкой

Я уже некоторое время дискутирую с этим, надеюсь ты можешь мне помочь.

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

Я следовал инструкциям Apple о том, как правильно закрывать модальные окна с помощью делегатов, и это работает нормально, за исключением того, что мне нужно добавить контроллер навигации в мое модальное окно, потому что процесс добавления требует двух шагов (здесь полноэкранный режим ):

enter image description here

Проблема заключается в настройке делегата, поэтому вот мои два вопроса:

1- В моем корневом классе представления (Моя вкладка) является делегатом класса Добавить (модальный), все настроен правильно, за исключением следующего:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"showAdd"]) {
        [[segue destinationViewController] setDelegate:self];

    }
}

Проблема заключается в том, что [segue destinationViewController] возвращает контроллер навигации, а не класс AddDrinkViewController (см. раскадровку). Как мне обойти это? Если я полностью удалю контроллер навигации, код будет работать нормально, устанавливая соответствующего делегата.

2- Есть ли способ установить делегата, перетаскивая выходы в раскадровке?

Спасибо!

19
задан Alexander Farber 5 February 2014 в 10:27
поделиться