初始视图控制器未显示

时间:2018-06-18 22:30:45

标签: ios xcode google-maps

我正在构建一个地图应用。初始视图控制器说开始(GetStartedVC),它会引导您到下一个视图控制器,这样您就可以选择一个位置(PlaceVC),然后导致一个程序化的GoogleMap mapView(GoogleMapInterfaceVC)。我在启动时将GetStartedVC设置为我的初始视图控制器。但是,每当我构建并运行应用程序时,GoogleMapInterfaceVC都是初始视图控制器。我担心这个问题是由AppDelegate.swift中的启动代码引起的?这是代码:

GMSPlacesClient.provideAPIKey("APIkey")
GMSServices.provideAPIKey("APIkey")

    self.window = UIWindow(frame: UIScreen.main.bounds)
    if let window = self.window {
        window.backgroundColor = UIColor.white
        window.accessibilityIdentifier = "GoogleMapInterfaceVC"

        let nav = UINavigationController()
        let mainView = GoogleMapInterfaceVC()
        nav.viewControllers = [mainView]
        window.rootViewController = nav
        window.makeKeyAndVisible()
    }

这是问题吗?

1 个答案:

答案 0 :(得分:0)

我知道已经过去一年了。我很惊讶没有人发布答案。您解决了这个问题吗?

在上面的代码段中,您将导航控制器放置为根视图控制器,在Nav控制器中,仅放置了GoogleMapInterfaceVC。您应该像这样将其更改为GetStartedVC。

let nav = UINavigationController()
    let mainView = GetStartedVC()
    nav.viewControllers = [mainView]
    window.rootViewController = nav
    window.makeKeyAndVisible()

然后,当用户执行适当的操作来选择地点时,您可以执行此操作

{
    navigationController.pushViewController(placeVC, animation: true)
}

以及用户选择“地图”操作

{
   navigationController.pushViewController(googleMapInterfaceVC, animation:true)
}

您应该免费获得返回按钮和弹出视图控制器。