在我的viewDidLoad
中,我想要一些基于前一个控制器的自定义代码。
如何在目标控制器的viewDidLoad中访问segue源控制器或先前的segue标识符来处理此问题?
答案 0 :(得分:7)
无法获得创建您的segue的引用。您可以在目标控制器中创建一个属性(在我的示例中为sourceVC),并在prepareForSegue方法(在源视图控制器中)中为self指定self:
[(DestinationVCClass *)segue.destinationViewController sourceVC] = self;
答案 1 :(得分:5)
您可以使用[self presentingViewController]
,然后您就可以访问发出segue的VC。对于像这样的情况,我通常喜欢将它与isMemberOfClass:
结合起来。
答案 2 :(得分:0)
您在目标
中的展开segue方法中执行以下操作self.source = (UIStoryboardSegue *)segue.sourceViewController;
将源定义为目标中的UIStoryboardSegue。上面的行将给出源或前一个segue。