Swift – 如何将自定义字段添加到Google Maps SDK中的标记?

我尝试使用地图来构build应用程序,并且我想在标记中添加其他信息。 文档仅提供2个属性titlesnippet 。 看起来像这样

 let position = CLLocationCoordinate2DMake(51.5, -0.127) let london = GMSMarker(position: position) london.title = "London" london.snippet = "Population: 8,174,100" london.map = mapView 

例如,我想为每个标记添加字段rating以显示地点的平均评分。

我怎样才能做到这一点 ?

Google Maps SDK在标记对象上包含一个userData字段,请参阅链接 。

使用你的例子,这就是分配数据的样子。

 let mCustomData = customData(starRating: 10) // init with a rating of 10 let position = CLLocationCoordinate2DMake(51.5, -0.127) let london = GMSMarker(position: position) london.title = "London" london.snippet = "Population: 8,174,100" london.userData = mCustomData london.map = mapView 

customData类是这样的。

 class customData{ var starRating: Int init(starRating rating: Int) { starRating = rating } } 

要访问您的用户数据,只需从标记对象中检索它。

 let mRating = (london.userData as! customData).starRating