[英]how can I dismiss first vc that second has presented modally on the first vc
我有一個名為“ firstVC”的視圖控制器,另一個名為“ secondVC”的視圖控制器。 第二個VC將以模態形式顯示在第一個VC上,當用戶按下第二個VC上的按鈕時,我想關閉第一個VC和第二個VC。
firstVC.dismiss(animated: true, completion: nil)
如果您建議我使用代理,請告訴我如何完全使用它? 我不知道應該在第一個VC中放入什么,或者應該在第二個VC中放入什么
還有一件事
在其他情況下,我需要在firstVC中執行json,並且當json完成時,兩個視圖控制器(firstVC和secondVC)都將被關閉,我該怎么辦呢?
這是使用委托的解決方案:
protocol DismissDelegate{
func dismissVC()
}
class FirstViewController: UIViewController, DismissDelegate{
func showSecondVC(){
let secondVC = SecondViewController()
secondVC.delegate = self
}
func dismissVC(){
self.dismiss(animated: true, completion: nil)
}
}
class SecondViewController: UIViewController{
var delegate: DismissDelegate?
@IBAction func buttonAction(sender: UIButton){
self.dismiss(animated: true, completion: nil)
delegate?.dismissVC()
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.