簡體   English   中英

識別快速模態呈現的視圖控制器

[英]Identifying viewcontrollers presented modally in swift

我有2個視圖控制器( viewcontroller1viewcontroller2 )。 它們都以模態形式(分別為vc1seguevc2segue )呈現給第三vc2segueviewcontroller3 )。 在viewcontroller3中,我希望能夠確定使用哪個viewcontroller / segue來呈現viewcontroller3並基於哪個在viewcontroller3執行某些操作。

我如何能夠確定使用了哪個viewcontroller / segue?

使用override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!)捕獲override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!)准備並以視圖控制器3現在知道正在發生什么的方式輕推序列目的地。

@Jelle的答案是實現此目的的好方法。 這是在viewController3's viewWillAppear實現相同功能的另一種方法:

if let viewContr2 = self.presentingViewController as? ViewController2 {
    // ViewController2 was who performed the segue
} else if let viewContr3 = self.presentingViewController as? ViewController3 {
    // ViewController3 was who performed the segue
}

presentingViewController可以改變parentViewController取決於你的架構。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM