在Google地图上添加标记

时间:2015-12-10 20:40:27

标签: ios swift google-maps-api-3 google-maps-markers

这可能是一个重复的问题(在写之前看了很多答案),但我无法解决。

我想简单地将谷歌地图集成到我的swift应用程序中。一切都很好,除了让地图上显示的标记。我正在关注谷歌地图api文档,但没有运气。

这是函数的主体:

// Do any additional setup after loading the view.

        /**Testing Google Maps **/
        let camera = GMSCameraPosition.cameraWithLatitude(-33.86,
            longitude: 151.20, zoom: 6)
        //let mapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)
        googleMapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)



        let  position = CLLocationCoordinate2DMake(10, 10)
        let marker = GMSMarker(position: position)
        marker.title = "Hello World"
        marker.map = googleMapView

这是在viewDidLoad()中执行的。我得到地图显示但没有显示任何标记。

感谢您的帮助。

3 个答案:

答案 0 :(得分:0)

此代码适用于我:

var marker = GMSMarker()
marker.postion = CLLocationCoordinate2DMake(10,10)
marker.title ="ENTER TITLE"
marker.snippet ="ENTER SNIPPET"
marker.map = googleMapView

希望这会有所帮助:)

答案 1 :(得分:0)

经过长时间的尝试和研究,通过调整一行来在UIView中使用GMSMap类型获得相同的地图视图来实现它:

let camera = GMSCameraPosition.cameraWithLatitude(-33.86,
            longitude: 151.20, zoom: 6)
        googleMapView.camera = camera //This line
        googleMapView = GMSMapView.mapWithFrame(CGRectZero, camera: camera)

答案 2 :(得分:0)

您是否在viewDidLoad中设置了mapView的委托

mapView.delegate = self

并像这样在您的GMSMapViewDelegate中接受ViewController协议

class ViewController: UIViewController, GMSMapViewDelegate {
}