[英]iOS Swift 4 Restart Navigation controller
我的故事板看起來像這樣:
導航控制器 - > StepOne - > StepTwo - > StepThree
StepOne
有一個Segue Show to StepTwo
等。
在StepOne
我打開StepTwo
on Button點擊如下:
@IBAction func next(_ sender: UIButton) {
self.performSegue(withIdentifier: "oneToTwo", sender: self)
}
在StepTwo
我以相同的方式打開StepThree
。
現在在我的最后StepThree
我想在StepOne
重啟:
@IBAction func end_click(_ sender: UIButton) {
self.navigationController?.popToRootViewController(animated: false)
}
這很好用。
問題是所有UI元素仍然在第一次運行時填寫。 當然,在我在每個控制器中導航之前,我可以清除所有值,但這似乎不是一個好習慣。
有沒有辦法告訴NavigationController
使用其ViewController
的新實例?
我想你可以簡單地解除導航控制器的根視圖控制器並再次呈現它。
你需要
// this inside end_click
let vc = self.storyboard!.instantiateViewController(withIdentifier:"StepOneId")
self.navigationController!.setViewControllers([vc], animated: true)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.