谷歌地图iOS swift中的自定义标记InfoWindow?

我在我的应用程序中使用谷歌地图iOS,我想显示自定义标记信息窗口.我如何创建它?

我正在使用故事板和
swift作为语言.

《谷歌地图iOS swift中的自定义标记InfoWindow?》

最佳答案 我的应用程序遇到了这样的问题.

>在ViewController.swift中:

 class ViewController: GMSMapViewDelegate {
        func mapView(_ mapView: GMSMapView, markerInfoContents marker: GMSMarker) -> UIView? {

                let placeMarker = marker as! PlaceMarker

                if let infoView = UIView.viewFromNibName("MarkerInfoView") as? MarkerInfoView {
                    infoView.nameLabel.text = placeMarker.place.name

                    if let photo = placeMarker.place.photo {
                        infoView.placePhoto.image = photo
                    } else {
                        infoView.placePhoto.image = UIImage(named: "generic")
                    }

                    return infoView
                } else {
                    return nil
                }
            }
        }

2.然后创建一个UIView类:

import UIKit

class MarkerInfoView: UIView {

    @IBOutlet weak var placePhoto: UIImageView!
    @IBOutlet weak var nameLabel: UILabel!
}

>然后创建一个名为与UIView类相同的xib文件:

《谷歌地图iOS swift中的自定义标记InfoWindow?》

请注意,类名与UIView类相同.您可以根据需要添加标签和图像.将这些IBOutlet连接到UIView类,如图所示.

希望这对你有所帮助.祝一切顺利!

点赞