I looked through the Google Maps docs and the description does not seem to help much.
I'm following an old tutorial that made use of markerInfoContents
however, when I used the delegate it didn't return what I expected.
With markerInfoContents
: My custom view seems to override the default view
When I used markerInfoWindow
, the results were what I expected:
I am simply pulling in a custom UIView from a xib file like so:
func mapView(_ mapView: GMSMapView, markerInfoWindow marker: GMSMarker) -> UIView? {
let placeMarker = marker as! PlaceMarker
print(placeMarker.name)
if let infoView = UIView.viewFromNibName(name: "MarkerInfoView") as? MarkerInfoView {
infoView.nameLabel.text = placeMarker.name
return infoView
} else {
return nil
}
}
(Replace markerInfoWindow
with markerInfoContents
for the first image results)
With markerInfoContents
it created the anchor and the shadow effect of the box. When using markerInfoWindow
it does not create that anchor or shadow effect like in the tutorial.
Any help would be great!
As mentioned in the documentation link posted, when using markerInfoContents
: "If this method returns a view, it will be placed within the default info window frame.", so your view is constrained within the default window (that's why it shows the anchor and shadow). It looks like the default infowindow is smaller than the UIView form your xib, so it truncates it.
The use of markerInfoWindow
shows the view you pass directly, so if it does not have the anchor or shadow, it will not appear.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With