无法创建 Google 地图实例

Posted

技术标签:

【中文标题】无法创建 Google 地图实例【英文标题】:Cannot create an instance of GoogleMaps 【发布时间】:2017-05-10 13:27:59 【问题描述】:

我正在尝试将 Core Location 与 Google 地图集成,但程序不断崩溃,并且调试器没有提供任何关于我做错了什么的洞察力。当我从一个视图转换到另一个视图时,我正在配置地图,但它在转换之前崩溃。我正在使用自定义转换(演示控制器)。我不认为这是问题所在,但想提一下以防万一。

locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
            locationManager.requestAlwaysAuthorization()
            locationManager.distanceFilter = 50
            locationManager.delegate = self
            let defaultLocation = CLLocation(latitude: -33.869405, longitude: 151.199)

            print(popUpView2.bounds)  //(0.0, 0.0, 290.0, 410.0)

            let camera = GMSCameraPosition.camera(withLatitude: defaultLocation.coordinate.latitude, longitude: defaultLocation.coordinate.longitude, zoom: zoomLevel)
            mapView = GMSMapView.map(withFrame: popUpView2.bounds, camera: camera)  // **Program Crashes Here**
            mapView.settings.myLocationButton = true
            mapView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
            mapView.isMyLocationEnabled = true

            popUpView2.addSubview(mapView)
            mapView.mapType = GMSMapViewType.terrain
            mapView.isHidden = true

            locationManager.startUpdatingLocation()

【问题讨论】:

添加一些崩溃细节。 【参考方案1】:

我必须创建一个容器视图并简单地更改:

popUpView2.addSubview(mapView)

到:

mapContainerView.addSubview(mapView)

我在 Interface Builder 中执行此操作并设置了适当的约束。

【讨论】:

以上是关于无法创建 Google 地图实例的主要内容,如果未能解决你的问题,请参考以下文章

使用 JavaScript 的 Google 地图无法在 jQuery 选项卡中正确显示

为什么实例化Google Maps Places Search会在地图上添加一个丑陋的白色div?

为啥这不是 google.maps.Map 的地图实例? InvalidValueError:setMap:不是 Map 的实例;

尽管有良好的API密钥,Google地图仍无法在我的网站上运行[关闭]

应用在 Play 商店发布后,Google plus 登录和 Google 地图无法使用

Google Maps API 3 - 限制平移/地图边界