从现有导航层次结构替换ViewController

时间:2016-09-03 14:20:46

标签: ios uiviewcontroller uinavigationcontroller

我正在以这种模式在我的ViewControllers中执行一些任务 A - > b - > c(此处A,B和C代表我的不同ViewControllers)

一旦我完成了C我正在执行一个segue来获取ViewController D现在我想在这里更改后退按钮的效果,以便当用户点击后退按钮ViewController时1应该打开,而不是C

我发现了一些类似的帖子,其中一个建议更改root,所以我尝试了这个: 在我的ViewController D

    override func viewDidAppear(animated: Bool) {

    if (cameAfterCreatingNewTag){

        let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let viewController = mainStoryboard.instantiateViewControllerWithIdentifier("TrendingVC")
        UIApplication.sharedApplication().keyWindow?.rootViewController = viewController;
        cameAfterCreatingNewTag = false 
     }

 }

但它没有用到我的导航栏消失了,而且viewController 1也被打开了。 (这不是预期的行为,当我点击VC 1的后退按钮时,我想打开VC D

有谁知道如何解决这个问题?或者还有其他正确的方法吗?

0 个答案:

没有答案