使用来自另一个操作的现有展开转场
Use existing unwind segue from another action
我有两个按钮 - "Ok" 和 "Delete","Ok" 将 segue 展开到最后一个 ViewController。
我希望 "Delete" 按钮启动相同的展开转场,但要事先执行一些操作。 (就我而言,从 Firebase 中删除信息)。
如何将动作和展开转场结合起来?我尝试调用 PerformSegueWithIdentifier 函数,但没有成功。
通过 control 创建第二个 unwind segue - 从 Delete 按钮拖动到退出 图标。您甚至可以在目的地 viewController 中使用现有的 @IBAction
。给这个 segue 一个标识符(select Document Outline 视图中的 segue 并在 Attributes Inspector 中设置标识符)例如 "deleteSegue"
然后在 prepare(for:sender)
中检查标识符并从 Firebase 中删除信息。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "deleteSegue" {
// delete data from Firebase
}
}
跟进评论中的问题:
I want to perform an action BEFORE unwinding the segue - I want a
popup to ask the user if he really wants to delete the item. only
after that I want the item deleted and segue unwinded.
不是从 Delete 按钮连接 unwind segue,而是从顶部的 viewController 图标连接它VC 到 退出 图标。仍然给它标识符,然后在你想执行 segue 时调用 performSegue(withIdentifier: "deleteSegue", sender: self)
。
我有两个按钮 - "Ok" 和 "Delete","Ok" 将 segue 展开到最后一个 ViewController。
我希望 "Delete" 按钮启动相同的展开转场,但要事先执行一些操作。 (就我而言,从 Firebase 中删除信息)。
如何将动作和展开转场结合起来?我尝试调用 PerformSegueWithIdentifier 函数,但没有成功。
通过 control 创建第二个 unwind segue - 从 Delete 按钮拖动到退出 图标。您甚至可以在目的地 viewController 中使用现有的 @IBAction
。给这个 segue 一个标识符(select Document Outline 视图中的 segue 并在 Attributes Inspector 中设置标识符)例如 "deleteSegue"
然后在 prepare(for:sender)
中检查标识符并从 Firebase 中删除信息。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "deleteSegue" {
// delete data from Firebase
}
}
跟进评论中的问题:
I want to perform an action BEFORE unwinding the segue - I want a popup to ask the user if he really wants to delete the item. only after that I want the item deleted and segue unwinded.
不是从 Delete 按钮连接 unwind segue,而是从顶部的 viewController 图标连接它VC 到 退出 图标。仍然给它标识符,然后在你想执行 segue 时调用 performSegue(withIdentifier: "deleteSegue", sender: self)
。