确定哪个 segue 触发了 UIViewController
Identify which segue triggered UIViewController
我有一个 UIViewController
可以从来自其他各种 UIViewControllers.
的多个弹出窗口转场访问 UIViewControllers.
我需要根据发件人是谁,或者可能取决于转场标识符来执行一些代码。我想知道是否有一种方法可以在不使用父视图控制器中的 prepareForSegue
方法的情况下在弹出视图中获取此信息。
我问是因为我的一些控制器非常简单并且完全在 IB 中构建,作为一个懒惰的程序员我不想为它们创建自定义 类。
如果唯一的问题是您不想为简单的 类 创建自定义 类,请实施 prepareForSegue
并通过检查 [=14] 了解触发了哪个 segue =].
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
// segue.identifier will give you which segue was triggered. Using this info you can branch out your logic......
}
使用这个override func shouldPerformSegue(withIdentifier identifier: String, sender: Any?) -> Bool {
if identifier == "yourseguename" {
// do your stuff and then decide if you want to perform it
return true
}
return false
}
我有一个 UIViewController
可以从来自其他各种 UIViewControllers.
的多个弹出窗口转场访问 UIViewControllers.
我需要根据发件人是谁,或者可能取决于转场标识符来执行一些代码。我想知道是否有一种方法可以在不使用父视图控制器中的 prepareForSegue
方法的情况下在弹出视图中获取此信息。
我问是因为我的一些控制器非常简单并且完全在 IB 中构建,作为一个懒惰的程序员我不想为它们创建自定义 类。
如果唯一的问题是您不想为简单的 类 创建自定义 类,请实施 prepareForSegue
并通过检查 [=14] 了解触发了哪个 segue =].
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
// segue.identifier will give you which segue was triggered. Using this info you can branch out your logic......
}
使用这个override func shouldPerformSegue(withIdentifier identifier: String, sender: Any?) -> Bool {
if identifier == "yourseguename" {
// do your stuff and then decide if you want to perform it
return true
}
return false
}