【问题标题】:iOS Navigation Back ButtoniOS 导航返回按钮
【发布时间】:2016-06-03 13:16:16
【问题描述】:

我有一个场景,我有 3 个控制器,让我们假设 A、B 和 C。当应用程序启动时,我正在使用 segue 从 A 转换到 C。后来,在 C 中通过使用按钮,我再次使用 segue 移动到 B。所以,现在我在 B 中,当我点击“返回”时,它正在过渡到 C,但它必须移动到 A。

这怎么可能,有什么提示/想法吗?

【问题讨论】:

  • 如果你正朝着 A -> C -> B 的方向前进,你怎么能认为从 B “回到” A 是可能的呢? O.o 可以跳过C控制器,但不是“后退”的意思
  • 正确地为您提出的问题分配标签

标签: ios swift controller navigation


【解决方案1】:

将此代码放在B控制器的后退按钮中。

for viewcontroller in self.navigationController!.viewControllers as Array {
            if viewcontroller.isKindOfClass(HomeVC) { // change HomeVC to your viewcontroller in which you want to back.  
                self.navigationController?.popToViewController(viewcontroller as! UIViewController, animated: true)
                break
            }
        }

或 如果 A 类是您的 RootView 控制器

self.navigationController?.popToRootViewControllerAnimated(true)

【讨论】:

  • @MaheshBabu 欢迎 :-)
【解决方案2】:

如果你的 Class A viewController 是 root,你可以在返回按钮上设置这个代码:

self.navigationController?.popToRootViewControllerAnimated(true)

【讨论】:

    猜你喜欢
    • 2020-04-06
    • 2014-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-23
    相关资源
    最近更新 更多