【发布时间】:2017-10-30 20:18:23
【问题描述】:
我想在我的导航栏“重置”上有一个按钮,我希望它连接到IBAction 以“重新启动”控制器。
我有一些来自另一个控制器的 segues,它改变了viewcontroller(有一个collectionview)的某些方面,我希望用户能够重新开始。有人对如何进行有任何建议吗?
【问题讨论】:
标签: swift
我想在我的导航栏“重置”上有一个按钮,我希望它连接到IBAction 以“重新启动”控制器。
我有一些来自另一个控制器的 segues,它改变了viewcontroller(有一个collectionview)的某些方面,我希望用户能够重新开始。有人对如何进行有任何建议吗?
【问题讨论】:
标签: swift
如果您将导航控制器嵌入到视图控制器中,那么您可以使用以下代码:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier("ViewController")
let viewcontrollers = self.navigationController.viewControllers
viewcontrollers.removeLast()
viewcontrollers.append(vc)
self.navigationControllers?.setViewControllers(viewcontrollers, animate: true)
【讨论】:
您可以更改应用程序的 rootViewController:
UIApplication.shared.keyWindow?.rootViewController = UIViewController()
【讨论】:
这就是我在 Swift 2.1 中使用 UINavigationController 内的 Home 视图的方式:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let homeVC = storyboard.instantiateViewControllerWithIdentifier("HomeViewController")
self.navigationController?.presentViewController(homeVC, animated: false, completion: nil)
self.navigationController?.dismissViewControllerAnimated(false, completion: nil)
【讨论】: