制作信息窗口标记Google地图始终显示为Swift

时间:2017-02-16 09:23:34

标签: swift google-maps

我有点击后显示的信息窗口,但如何使它始终显示?没有用户点击标记。我正在使用谷歌地图。

这是我的代码:

    mapView.delegate = self
    let camera = GMSCameraPosition.camera(withLatitude: coordinate.lat, longitude: coordinate.long, zoom: 20)
    mapView.animate(to: camera)

    for state in states {
        let marker = GMSMarker()
        marker.position = CLLocationCoordinate2DMake(state.lat, state.long)
        print(marker.position)
        marker.title = "Country"
        marker.snippet = "Places"
        marker.map = mapView
        mapView.selectedMarker = marker
        marker.map = mapView

    }

之前感谢

2 个答案:

答案 0 :(得分:0)

尝试将mapView.selectedMarker = marker移至委托函数mapView(_ mapView: GMSMapView, didTap marker: GMSMarker) -> Bool函数

答案 1 :(得分:0)

首先我们需要添加标记。

let position = CLLocationCoordinate2D(latitude: 10, longitude: 10)
let marker = GMSMarker(position: position)
marker.title = "Hello World"
marker.map = mapView

我们可以通过以下方式自定义标记图像: -

let position = CLLocationCoordinate2D(latitude: 51.5, longitude: -0.127)
let london = GMSMarker(position: position)
london.title = "London"
london.icon = UIImage(named: "house")
london.map = mapView
//To change the Marker Opacity use below
marker.opacity = 0.6

要旋转标记: -

let position = CLLocationCoordinate2D(latitude: 51.5, longitude: -0.127)
let degrees = 90.0
let london = GMSMarker(position: position)
london.groundAnchor = CGPoint(x: 0.5, y: 0.5)
london.rotation = degrees
london.map = mapView

并添加信息窗口: -

let position = CLLocationCoordinate2D(latitude: 51.5, longitude: -0.127)
let london = GMSMarker(position: position)
london.title = "London"
london.snippet = "Population: 8,174,100"
london.map = mapView

设置信息窗口以自动刷新

marker.tracksInfoWindowChanges = true

更改信息窗口的位置

let position = CLLocationCoordinate2D(latitude: 51.5, longitude: -0.127)
let london = GMSMarker(position: position)
london.title = "London"
london.snippet = "Population: 8,174,100"
london.infoWindowAnchor = CGPoint(x: 0.5, y: 0.5)
london.icon = UIImage(named: "house")
london.map = mapView

有关详情,请访问Here