2013-05-30 3 views
9

В моем viewDidLoad Мне нужен какой-то пользовательский код, основанный на предыдущем контроллере.Ссылка на контроллер представления источника segue

Как я могу получить доступ к контроллеру источника segue или предыдущему идентификатору segue в представлении диспетчера управленияDidLoad для управления этим?

+1

Вы имеете в виду в контроллере назначения? Последнее предложение вы не поняли. – rdelmar

ответ

7

Невозможно получить ссылку на созданную вами секцию. Вы можете создать свойство (sourceVC в моем примере) в контроллере назначения, и назначить себя это свойство в методе prepareForSegue (в контроллере представления источника):

[(DestinationVCClass *)segue.destinationViewController sourceVC] = self; 
+0

Спасибо, что получил – StuartM

5

Вы можете использовать [self presentingViewController], и вы сможете получить доступ к VC, который выпустил segue. Обычно мне нравится связывать его с isMemberOfClass: для такой ситуации.

+1

Это будет работать только в том случае, если segue является модальным, он не будет работать для нажатия. – rdelmar

+0

Похоже, он говорит о модальном сеге, но да, хороший звонок. –

+0

Я получаю свой rootViewController, вызывая этот метод, поэтому кажется, что логика немного сломана. – Bob

0

Вы следующее разматывания метода SEGUE в пункте назначения

self.source = (UIStoryboardSegue *)segue.sourceViewController; 

Определить источник как UIStoryboardSegue в пункте назначения. В приведенной выше строке указывается источник или предыдущий сеанс.

Смежные вопросы