Swift - 如何在Google Maps SDK中为标记添加自定义字段?

时间:2015-11-17 20:54:18

标签: ios swift google-maps

我尝试使用地图构建应用,我希望在标记中添加其他信息。文档仅提供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以显示地点的平均评分。

我该怎么做?

1 个答案:

答案 0 :(得分:5)

Google Maps SDK在标记对象上包含userData字段,请参阅link

使用您的示例,这就像分配数据一样。

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