【发布时间】:2015-06-10 07:32:42
【问题描述】:
我已经创建了一个 xib 和一个视图控制器,并希望在 swift 中为它显示一个自定义的信息窗口作为标记。在互联网上搜索后,我找到了 OBJ-C 的旧教程,但这对我没有帮助。
谢谢。
【问题讨论】:
标签: ios google-maps swift sdk infowindow
我已经创建了一个 xib 和一个视图控制器,并希望在 swift 中为它显示一个自定义的信息窗口作为标记。在互联网上搜索后,我找到了 OBJ-C 的旧教程,但这对我没有帮助。
谢谢。
【问题讨论】:
标签: ios google-maps swift sdk infowindow
您可以从 GMSMapViewDelegate 实现markerInfoWindow method
在 Swift 中显示自定义信息窗口的示例实现:
func mapView(mapView: GMSMapView!, markerInfoWindow marker: GMSMarker!) -> UIView! {
var infoWindow = NSBundle.mainBundle().loadNibNamed("CustomInfoWindow", owner: self, options: nil).first! as CustomInfoWindow
infoWindow.label.text = "\(marker.position.latitude) \(marker.position.longitude)"
return infoWindow
}
具体实现可以访问this GitHub page。
取决于您希望信息窗口的外观,您可以通过infoWindow.backgroundColor = UIColor.redColor() 更改背景颜色,或通过infoWindow.layer.cornerRadius = 10.0f 更改信息窗口的形状,甚至可以通过infoWindow.imageView.image = UIImage(named: "image.jpg") 添加图像.
【讨论】: