Ios 初始视图控制器未出现
我正在创建一个地图应用程序。初始视图控制器显示get Start(GetStartedVC),这会将您引导到下一个视图控制器,以便您可以选择一个位置(PlaceVC),然后引导到编程的GoogleMap mapView(GoogleMapInterfaceVC)。启动时,我将Ios 初始视图控制器未出现,ios,xcode,google-maps,Ios,Xcode,Google Maps,我正在创建一个地图应用程序。初始视图控制器显示get Start(GetStartedVC),这会将您引导到下一个视图控制器,以便您可以选择一个位置(PlaceVC),然后引导到编程的GoogleMap mapView(GoogleMapInterfaceVC)。启动时,我将GetStartedVC设置为初始视图控制器。但是,每当我构建并运行应用程序时,GoogleMapInterfaceVC是初始视图控制器。我担心此问题是由我在AppDelegate.swift中的启动代码引起的?代码如下:
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()
}
这就是问题所在吗?我知道已经一年多了。我很惊讶没有人回复。你解决过这个问题吗 在上面的代码段中,您将导航控制器作为根视图控制器放置,而在导航控制器中,您仅放置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)
}
你应该免费获得后退按钮和弹出视图控制器 澄清一下:当我删除这个AppDelegate.swift代码时,我的GetStartedVC将成为新的初始ViewController。但是,我无法从PlacesVC访问地图。这就是为什么我担心我把AppDelegate.swift启动代码写错了,以及为什么它是我的问题的原因。同样为了澄清:上面的代码放在这个函数中:func应用程序(u应用程序:UIApplication,didfishlaunchingwithoptions启动选项:[uiapplicationaunchoptions:Any]?)->Bool{