swift 3 google maps - 如何更新地图上的标记
Posted
技术标签:
【中文标题】swift 3 google maps - 如何更新地图上的标记【英文标题】:swift 3 google maps - how to update marker on the map 【发布时间】:2017-06-30 13:37:26 【问题描述】:我正在使用谷歌地图
这是我的代码:
import UIKit
import GoogleMaps
class ViewController: UIViewController
@IBAction func pressed(_ sender: Any)
//self.myMapView.marker.position = CLLocationCoordinate2D(latitude: +31.75097956, longitude: +35.23694378)
@IBOutlet weak var myMapView: GMSMapView!
override func viewDidLoad()
super.viewDidLoad()
let camera = GMSCameraPosition.camera(withLatitude: +31.75097946, longitude: +35.23694368, zoom: 17.0)
self.myMapView.mapType = .terrain
self.myMapView.camera = camera
// Creates a marker in the center of the map.
let marker = GMSMarker()
marker.position = CLLocationCoordinate2D(latitude: +31.75097946, longitude: +35.23694368)
marker.title = "some text"
marker.map = self.myMapView
marker.opacity = 1.0
有一个 UIView 可以在其中加载地图。还有一个按钮。 按下按钮时,我想更新标记的位置。
谢谢
【问题讨论】:
您要更新您在viewDidLoad()
上添加的标记位置吗?
是的。没错
【参考方案1】:
创建marker
作为类变量。并且按钮点击功能添加如下代码
import UIKit
import GoogleMaps
class ViewController: UIViewController
@IBOutlet weak var myMapView: GMSMapView!
var marker: GMSMarker!
override func viewDidLoad()
super.viewDidLoad()
let camera = GMSCameraPosition.camera(withLatitude: +31.75097946, longitude: +35.23694368, zoom: 17.0)
self.myMapView.mapType = .terrain
self.myMapView.camera = camera
// Creates a marker in the center of the map.
marker = GMSMarker()
marker.position = CLLocationCoordinate2D(latitude: +31.75097946, longitude: +35.23694368)
marker.title = "some text"
marker.map = self.myMapView
marker.opacity = 1.0
@IBAction func pressed(_ sender: Any)
//New location coordinate
marker.position = CLLocationCoordinate2D(latitude: -1.75097946, longitude: +15.23694368)
let camera = GMSCameraPosition.camera(withTarget: marker.position, zoom: 17.0)
mapView.camera = camera
【讨论】:
以上是关于swift 3 google maps - 如何更新地图上的标记的主要内容,如果未能解决你的问题,请参考以下文章
Swift 3 - 在 GMSMarker 上长按并打印其坐标(Google Maps iOS SDK)
如何在 swift 中为 ios 的 google maps sdk 中的地图视图添加标记
如何在 Google Map iOS Swift 中获取点击位置的 Lat Long