似乎是一项非常简单的任务,但由于某种原因它无法正常工作。
我初始化 map 并以这种方式放置第一个位置:
self.view = self.mapView
self.mapView?.isMyLocationEnabled = true
let KBPLocation = CLLocationCoordinate2DMake(50.341707, 30.893606)
let camera = GMSCameraPosition.camera(withLatitude: KBPLocation.latitude, longitude: KBPLocation.longitude, zoom: 12)
self.mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
然后我有一个功能可以做到这一点:
func moveToNextLocation() {
self.mapView?.camera = GMSCameraPosition.camera(withLatitude: 37.778577, longitude: -122.419063, zoom: 15)
}
我希望它将 map 移动到新的位置。但事实并非如此。
如果我将此行添加到函数
self.view = self.mapView
中,它将起作用,但是它没有从一个点到另一个点的过渡动画,而只是立即显示位置。我也认为这不是将mapView
再次分配给view
的正确方法。请帮我弄清楚为什么它不动吗?
非常感谢!
编辑: ps:我正在使用本教程:link,它位于添加新位置的第15分钟
最佳答案
我通过移动解决了这个问题:
self.view = self.mapView
行后:
self.mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
我想原因是在 map 初始化后需要分配视图。
关于ios - Google Maps sdk-不会将 View 移到新点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41090024/