google-maps-ios-utils icon indicating copy to clipboard operation
google-maps-ios-utils copied to clipboard

map flickering issue

Open CMiOSDeeplink opened this issue 3 years ago • 1 comments

When the page was idle, the map was flickering on a black background.

Also, it is inserted inside the TableView cell.

version :'GoogleMaps', '7.3.0'

Code example

    mapContainerView.subviews.first?.removeFromSuperview()
    // Set up map view
    let mapView = GMSMapView()
                    
    addSelectionMarker(forMapView: mapView, location: location)
    
    // Disable all maps controls
    mapView.settings.indoorPicker = false
    mapView.settings.compassButton = false
    mapView.settings.myLocationButton = false
    mapView.settings.setAllGesturesEnabled(false)
    
    // Add mapview to container
    mapView.translatesAutoresizingMaskIntoConstraints = false
    mapContainerView.addSubview(mapView)
    let views = ["mapView": mapView]
    var constraints = [NSLayoutConstraint]()
    constraints.append(contentsOf: NSLayoutConstraint.constraints(withVisualFormat: "H:|[mapView]|",
                                                                  options: .alignAllCenterX,
                                                                  metrics: nil,
                                                                  views: views))
    constraints.append(contentsOf: NSLayoutConstraint.constraints(withVisualFormat: "V:|[mapView]|",
                                                                  options: .alignAllCenterX,
                                                                  metrics: nil,
                                                                  views: views))
    mapContainerView.addConstraints(constraints)
    mapView.setNeedsLayout()
    mapView.layoutIfNeeded()

    func addSelectionMarker(forMapView mapView: GMSMapView,
                        location: CMStoreLocation) {
    let marker = GMSMarker()
    let storeLocation = CLLocationCoordinate2DMake(location.lat,
                                                   location.lon)
    marker.position = storeLocation
    marker.icon = UIImage(named: "location_cmgreen")
    marker.map = mapView
    mapView.animate(toLocation: storeLocation)
    mapView.animate(toZoom: googleMapsDefaultZoomScale)
}

Thanks! IMG_20230221_123052

CMiOSDeeplink avatar Feb 21 '23 07:02 CMiOSDeeplink

If you would like to upvote the priority of this issue, please comment below or react with :+1: so we can see what is popular when we triage.

@CMiOSDeeplink Thank you for opening this issue. 🙏 Please check out these other resources that might help you get to a resolution in the meantime:

This is an automated message, feel free to ignore.

wangela avatar Feb 21 '23 07:02 wangela