我正在尝试做的事情:
- 检查条件,如果条件为真,则执行 segue 普通的。如果条件为假,调用 shouldPerformSegue 方法并 返回 false 以取消 segue。
我是如何尝试做到这一点的:
func buttonTapped{
if(condition is true){
// Perform actions
// Perform segue as normal
} else{
shouldPerformSegue(withIdentifier "mySegueIdentifier", sender: self){
return false
}
}
}
我收到的错误:
- 调用中的额外参数。我删除了发件人参数以尝试获取 这行得通,它为我消除了错误,但是 segue 在不该执行的时候仍然执行。
我在 apple 文档中搜索了使用此方法的正确方法,但我仍然不确定该怎么做。我们将不胜感激并高度赞赏任何帮助。
最佳答案
如果你想执行逻辑来决定是否应该“执行”segue,你需要覆盖 shouldPerformSegue
。这将允许操作系统 (1) 正确启动事情,以及 (2) 让您能够决定转场是否完成。
override func shouldPerformSegue(withIdentifier identifier: String, sender: Any?) -> Bool {
if [criteria met to perform segue] {
return true
} else {
return false
}
}
关于ios - 在 swift4 中使用 shouldPerformSegue(withIdentifier, sender) 方法时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47110970/