使用Google地图iOS sdk在swift中创建自定义信息窗口?

use*_*937 6 sdk google-maps infowindow ios swift

我创建了一个xib和一个视图控制器,并希望在swift中为标记显示一个自定义信息窗口.在互联网上搜索后,我在OBJ-C中找到了一个旧教程但是这对我没有帮助.

谢谢.

zta*_*tan 8

您可以从GMSMapViewDelegate 实现markerInfoWindow方法

在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
 }
Run Code Online (Sandbox Code Playgroud)

您可以访问此GitHub页面以获取详细信息.

取决于您希望信息窗口的样子,您可以通过执行更改背景颜色infoWindow.backgroundColor = UIColor.redColor(),或通过执行更改信息窗口的形状infoWindow.layer.cornerRadius = 10.0f,甚至通过执行添加图像infoWindow.imageView.image = UIImage(named: "image.jpg").