【问题标题】:how to go to home page without storyboard by swift 4.2?swift 4.2如何在没有情节提要的情况下进入主页?
【发布时间】:2019-03-04 17:22:40
【问题描述】:

我有几个视图控制器,我想要一个如下的工作流程:

所以 MainController 将创建一个包含 A、B、C 视图控制器的 tabbarcontroller。然后当用户去B,会去B-1,B-2最后再回到MainController。

我该如何处理这个流程? 我应该使用 popViewController 吗?如果是这样,如何?

【问题讨论】:

  • MainController 中有什么?通常的做法是在tab控制器之后添加一个导航控制器,并将控制器B、B1、B2添加到堆栈中。使用popToRootViewController(animated:)返回rootviewcontroller
  • @PankajTeckchandani,答案没有回答我的问题

标签: ios swift swift4.2


【解决方案1】:

你可以用它来弹出根视图控制器

self.navigationController?.popToRootViewController(animated:  true)

【讨论】:

  • 这只有在 MainController 也在 UINavigationController 中时才有效
  • 在navigationController中添加BViewController
【解决方案2】:

在您的情况下,您需要使用 UINavigationController

请查看此示例,此示例非常适合您的要求。

Swift Example

Apple example code (Objective-C)

更新 Another example

这里我没有放示例代码,请查看上面的链接以供参考。

【讨论】:

  • 但是我的 rootViewControllr 是一个 TabBar 控制器
  • 是的,我知道,但您需要设置 TabBar 和 UINavigationController 在此链接中说明如何设置 TabBar 和 UINavigationController。
【解决方案3】:

如果您不知道您的应用程序的层次结构,或者它太复杂,这个可以为您提供所需的UIViewController

let viewController = UIApplication.shared.keyWindow!.rootViewController as! YourViewController

【讨论】:

  • 这会导致应用崩溃
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-07
  • 2014-04-21
  • 2015-10-26
  • 1970-01-01
相关资源
最近更新 更多