【问题标题】:How can I skip a ViewController when dismissing from navigationController?从导航控制器中解散时如何跳过视图控制器?
【发布时间】:2016-10-17 16:12:23
【问题描述】:

假设您有一些 ViewController,例如:

A --> B --> C --> X --> D

X 是某种可以从任何地方打开的永久菜单。所有这些都插入NavigationController,所以要回去我会做类似的事情:

func leftNavButtonClick(sender: UIButton) { navigationController?.popViewControllerAnimated(true) }

但是,如果我从 D 执行此操作,我想回到 C,而不是 X。我尝试在打开下一个 ViewController 之前关闭菜单,但这似乎效果不佳。

有什么想法吗?

【问题讨论】:

标签: ios swift uiviewcontroller


【解决方案1】:

您可以使用视图控制器堆栈找到您的 VC 并弹出它

if let vcStack = self.navigationController?.viewControllers
        {
            for vc in vcStack {
                        if vc.isKindOfClass(MyVC)
                        {                           
                            self.navigationController?.popToViewController(vc, animated: true)
                            break
                        }
                    }
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 2018-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多