我正在尝试使用Google Maps SDK显示我当前位置的地图(伯克利,加利福尼亚州)作为焦点,但无论我输入什么lat / lon,它总是显示欧洲,如下所示:< / p>
以下是地图视图的代码:
let camera = GMSCameraPosition.cameraWithLatitude(37.8750360, longitude: -122.2573240, zoom: 1)
mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)
mapView.myLocationEnabled = true
mapView.delegate = self
我在我的应用程序的其他部分做了非常类似的事情,但从来没有遇到过问题。如果有人知道如何解决这个问题,请告诉我!感谢
答案 0 :(得分:0)
答案 1 :(得分:0)
答案 2 :(得分:0)
也许这是因为您将mapView的框架设置为CGRectZero
。这可能会导致地图的高度和零宽度为零。
基于此tutorial的示例:
override func viewDidLoad()
{
let camera: GMSCameraPosition = GMSCameraPosition.cameraWithLatitude(37.8750360, longitude: -122.2573240, zoom: 1)
mapView = GMSMapView.mapWithFrame(self.view.frame, camera: camera)
mapView.camera = camera
}
检查以下相关问题:
答案 3 :(得分:0)
您甚至在设置代理之前就已经设置了视图(因此您的代码甚至没有附加到您的mapView实例)。修复如下:
1:确保您已为班级
定义了GMSMapViewDelegate
2:先设置代表
mapView.delegate = self
mapView.myLocationEnabled = true
let camera = GMSCameraPosition.cameraWithLatitude(37.8750360, longitude: -122.2573240, zoom: 1)
mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)