【问题标题】:How do you set UITabBarContoller in interface builder as root view controller?如何在界面生成器中将 UITabBarContoller 设置为根视图控制器?
【发布时间】:2016-01-20 18:53:09
【问题描述】:

我已经在 Swift 中克隆了一个项目,但是该项目都是以编程方式完成的(没有使用界面构建器)。该应用使用 Parse PFLogin 和 PFSign up。

我想使用 UITabBarController(在界面生成器中)来管理视图的转换。下面是我在 AppDelegate 中的 didFinishLaunchingWithOptions 的代码:

func application(application: UIApplication, didFinishLaunchingWithOptions     launchOptions: [NSObject: AnyObject]?) -> Bool {
    setupParse()
    setupLayer()

    //* Show View Controller
    controller = LoginViewController()
    controller.layerClient = layerClient

    // Register for push
    self.registerApplicationForPushNotifications(application)


    self.window!.rootViewController = UINavigationController(rootViewController: controller)
    self.window!.backgroundColor = UIColor.whiteColor()
    self.window!.makeKeyAndVisible()


    return true
}

设置根视图控制器和设置初始视图控制器一样吗?

更改此代码以将我的界面构建器中显示的 UITabBarController 设置为根的最佳方法是什么。

任何帮助将不胜感激。

谢谢

马克

【问题讨论】:

  • 当您从情节提要中设置初始视图控制器时,情节提要应自动为您设置,因此您不必对其进行编程
  • 我遇到的问题是我正在将代码集成到另一个选项卡式应用程序中。我在示例中的代码将 UINavigationController 设置为根,我似乎无法找到一种方法来将已在界面生成器中创建的 UITabBarController 设置为根。

标签: ios swift parse-platform interface-builder rootviewcontroller


【解决方案1】:

您想从情节提要中设置初始 UIViewController。你可以通过将箭头指向你想要的视图控制器来做到这一点:

您也可以在视图控制器的属性检查器中执行此操作,方法是选中“是初始视图控制器吗?” 复选框。

然后您可以从didFinishLaunchingWithOptions 函数中删除UIWindow 代码。

【讨论】:

  • 因此,如果我想使用 Parse PFLogin 模板,它是 100% 代码,我应该在我的 TabBarController 设置为初始视图控制器之前有一个 LoginViewController 并在登录成功方法中使用 segueID 转换到UITabBarViewController?
  • 是的,或者将TabBarController设置为主控制器并在需要时将LoginViewController显示在上面
猜你喜欢
  • 1970-01-01
  • 2015-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多