为GMSMarker设置自定义accessibilityIdentifier

问题描述 投票:4回答:2

我使用Google Maps Api来制作地图和标记。

我通过设置:mapView.accessibilityElementsHidden = false来启用标记的可访问性

现在我在地图上的所有自定义标记都有可访问性ID,例如:myappname.GMSPlaceMarker_somenumbers,例如myappname.GMSPlaceMarker_0x600000170200

我怎么能为所有引脚设置一个accessibilityIdentifier,例如Map pin

我已经尝试过:

  • marker.accessibilityLabel = "Map pin",但它设置label值,而不是id
  • marker.title = "Map pin"没什么变化
  • marker.setValue("Map pin", forKey: "accessibilityIdentifier")没什么变化

我的markerlet marker = GMSPlaceMarker()所在的class GMSPlaceMarker: GMSMarker

swift google-maps-sdk-ios
2个回答
1
投票

试试这个,

func markPoints() {
    var annotationCoord : CLLocationCoordinate2D = CLLocationCoordinate2D()
    annotationCoord.latitude = (selectedLocation.latitude as NSString).doubleValue
    annotationCoord.longitude = (selectedLocation.longitude as NSString).doubleValue

    let annotationPoint: MKPointAnnotation = MKPointAnnotation()
    annotationPoint.coordinate = annotationCoord
    annotationPoint.title = selectedLocation.name
    annotationPoint.subtitle = "Anand: 7348858742"
    theMap.addAnnotation(annotationPoint)
}

0
投票

如果你使用swift 4尝试这个,

    var destionationMarker: GMSMarker!

    func setupDriverMarker(coordinate: CLLocationCoordinate2D) {            
        destionationMarker = GMSMarker(position: coordinate)
        for pin: GMSMarker in self.DestinationMarkerArray {
            if pin.userData as! String == "drivermarker" {
                pin.map = nil
            }
        }            
        destionationMarker.title = "Your Title"
        destionationMarker.appearAnimation = GMSMarkerAnimation.pop
        let images = #imageLiteral(resourceName: "ic_map_marker")
        destionationMarker.icon = images
        destionationMarker.userData = "drivermarker"
        destionationMarker.opacity = 1
        destionationMarker.map = journeyMapView

    }

像这样实现

DriverLocation = CLLocationCoordinate2D(latitude: 21.2362546, longitude: 72.8751862)
setupDriverMarker(coordinate: DriverLocation)
© www.soinside.com 2019 - 2024. All rights reserved.