参考segue源视图控制器

在我的viewDidLoad我想要一些基于前一个控制器的自定义代码。

如何在目标控制器的viewDidLoad中访问segue源控制器或先前的segue标识符来处理此问题?

无法获得创建您的segue的引用。 您可以在目标控制器中创建一个属性(在我的示例中为sourceVC),并在prepareForSegue方法(在源视图控制器中)中为self指定self:

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

你可以使用[self presentingViewController] ,你就可以访问发出segue的VC了。 我通常喜欢将它与isMemberOfClass:对于这样的情况。

您在目标中的展开segue方法中执行以下操作

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

将源定义为目标中的UIStoryboardSegue。 上面的行将给出源或前一个segue。