我尝试使用地图构建应用,我希望在标记中添加其他信息。文档仅提供2个属性title
和snippet
。看起来像这样
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
以显示地点的平均评分。
我该怎么做?
答案 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