等待表格表被解雇 - iOS

时间:2016-08-17 13:00:37

标签: ios swift dismiss

我有一个来自AppDelegate的表单的视图,其中包含以下代码:

let storyboard = UIStoryboard(name: "Main", bundle: nil)
let usernameVC = storyboard.instantiateViewController(withIdentifier: "ChooseUsernameViewControllerID")
usernameVC.modalPresentationStyle = .formSheet
self.window?.rootViewController?.present(usernameVC, animated: true, completion: nil)

在我提交之后,我必须等待表格表被删除才能继续执行代码...如何暂停代码的执行,直到表格单被解除?

PS。要执行的代码是:

UIView.transition(with: self.window!, duration: 0.3, options: UIViewAnimationOptions.transitionFlipFromRight, animations: {
                self.window?.rootViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "MainContainerViewControllerID")
                }, completion: nil)

1 个答案:

答案 0 :(得分:0)

您要在此处执行的操作是使用一个方法向ChooseUsernameViewController添加委托。该方法应称为“ChooseUsernameDisappeared”或类似的东西。然后,将一个viewDidDisappear方法添加到ChooseUsernameViewcontroller,并在调用此方法时触发委托。然后,在AppDelegate中实现ChooseUsername委托来监听消失。然后,您可以执行代码。