谷歌地图api for ios没有正确显示自定义信息窗口

时间:2017-06-12 05:43:35

标签: ios swift xcode google-maps-sdk-ios

我正在尝试在我的应用中添加一个地图,其中显示了圆顶位置以及自定义信息窗口中每个位置的描述,该窗口应该看起来像这样:

enter image description here

所以我创建了一个带有类的xib文件来创建看起来像这样的自定义窗口:

enter image description here

及其班级:

import UIKit

class CustomInfoWindow: UIViewController {

    @IBOutlet weak var name = UILabel()
    @IBOutlet weak var desc = UITextView()

    override func viewDidLoad() {
        super.viewDidLoad()

    }

    init(name:String, desc:String) {
        self.name?.text = name
        self.desc?.text = desc
        super.init(nibName: nil, bundle: nil)
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

}

现在每当我实现map的委托方法时,它返回标记信息窗口的UIView并添加文本,如下所示:

func mapView(_ mapView: GMSMapView, markerInfoContents marker: GMSMarker) -> UIView? {
    if marker.position.latitude == latitude && marker.position.longitude == longitude{
        marker.title = "You"
        return nil
    }else{
    let customWindow = CustomInfoWindow(name: theName!, desc: theDesc!)
    return customWindow.view

    }
}

这就是我得到的:

enter image description here

这个问题让我烦恼了很长时间,所以如何解决?

0 个答案:

没有答案