关闭当前视图控制器并打开新的视图控制器 - ios Swift
Posted
技术标签:
【中文标题】关闭当前视图控制器并打开新的视图控制器 - ios Swift【英文标题】:Dismiss Current View controller and open new view controller - ios Swift 【发布时间】:2016-01-28 14:02:27 【问题描述】:我有三个视图控制器。现在我在第二个视图控制器中。我想关闭我当前的视图控制器并打开第三个视图控制器。我该怎么做?我可以使用以下代码关闭第三个视图控制器以及第二个视图控制器。
self.presentingViewController?.presentingViewController?.dismissViewControllerAnimated(false, completion: nil)
我的问题是当我使用此功能时屏幕闪烁。这意味着第二个视图控制器显示并关闭。那我该怎么做呢?
我想关闭当前视图控制器并打开新视图 控制器
在 android 中是可能的。所以我希望在ios中也是可能的。我怎样才能做到这一点。请有人帮助我。
编辑 1:
我尝试关闭当前的视图控制器并使用以下代码打开新的视图控制器。然后我的第二个和第三个都关闭了。
self.dismissViewControllerAnimated(false)
// go back to MainMenuView as the eyes of the user
presentingViewController.dismissViewControllerAnimated(false, completion: nil)
【问题讨论】:
【参考方案1】:我找到了解决办法
我将所有视图控制器更改为导航控制器的子级。并从第三个视图控制器中删除历史记录,如下所示
let tempVCA = self.navigationController!.viewControllers
for tempVC: UIViewController in tempVCA
if (tempVC is SECONDVC)
tempVC.removeFromParentViewController()
我正在使用来自第三个视图控制器的 viewdidload
func 的这段代码
【讨论】:
以上是关于关闭当前视图控制器并打开新的视图控制器 - ios Swift的主要内容,如果未能解决你的问题,请参考以下文章