【问题标题】:Dimiss View Controller to Specific View Controller Issue将视图控制器关闭到特定的视图控制器问题
【发布时间】:2020-03-27 19:02:22
【问题描述】:

我有 VC1,我呈现 VC2,然后是多个 VC,就像在一个流程中一样,

VC3 -> VC4 -> VC5

现在我希望 VC5 关闭 VC2,我已经搜索并尝试了代码并按名称调用视图控制器,但它不能正常工作,谁能告诉我如何获得此流程并关闭特定视图控制器?

【问题讨论】:

    标签: swift dismissviewcontroller


    【解决方案1】:

    您可以使用 unwindSegues 在导航层次结构中“返回”一个或多个步骤。

    参考https://developer.apple.com/library/archive/technotes/tn2298/_index.html

    【讨论】:

    • 如果我想使用关闭视图控制器怎么办。 @Subramanian Mariappan
    • 这就是 unwind segue 可以让你做的。关闭当前视图控制器并返回到导航堆栈中的任何其他视图控制器。
    • 如何根据我的 API 调用 unwind segue? .@Subramanian Mariappan
    • 我正在展示视图控制器,需要关闭视图控制器而不是弹出。 @Subramanian Mariappan
    • 在你的 api 结果中,你可以使用你的 unwind segue 标识符调用 viewController 的 performSegue 函数。
    【解决方案2】:
      let viewControllers: [UIViewController] = self.navigationController!.viewControllers as [UIViewController]
      self.navigationController!.popToViewController(viewControllers[viewControllers.count - 3], animated: true)
    

    注意:这里3表示没有控制器

    【讨论】:

    • 我正在展示视图控制器,需要关闭视图控制器而不是弹出。 @Madhuri Doppalapudi
    猜你喜欢
    • 2015-02-05
    • 1970-01-01
    • 1970-01-01
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多