【问题标题】:Creating custom info window in swift with the Google maps iOS sdk?使用 Google 地图 iOS sdk 快速创建自定义信息窗口?
【发布时间】:2015-06-10 07:32:42
【问题描述】:

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

谢谢。

【问题讨论】:

    标签: ios google-maps swift sdk infowindow


    【解决方案1】:

    您可以从 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") 添加图像.

    【讨论】:

    • 有没有办法让它看起来更像一个信息窗口,而不仅仅是一个方形框。
    • 请查看我编辑的答案@user3280937,这真的取决于您希望信息窗口的外观,您可以在 xib 文件或代码中进行大量自定义。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-05
    • 2017-10-30
    • 1970-01-01
    • 1970-01-01
    • 2011-04-21
    • 1970-01-01
    • 2014-05-20
    相关资源
    最近更新 更多