Cómo personalizar GoogleMap InfoWindow usando Swift 3

Versión Xcode: 8.1

objective:

Para replace infoWindow nativo por uno personalizado

problema:

  1. Cuando hago clic en el marcador, mi infoWindow personalizado no se muestra pero el nativo, o
  2. Tema 1: se muestra la señal SIGABRT si no borro myView.delegate = self (Ver mi código y mi investigación # 21)

que he hecho:

  1. Creado un file .swift y un file .xib con mi layout infoWindow personalizado.
  2. La function insertada mapView en ViewController.swift:

     override func viewDidLoad() { super.viewDidLoad() 

      let camera = GMSCameraPosition.camera(withLatitude: latitude, longitude: Longitude, zoom: 16) let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera) mapView.delegate = self // Thread 1:signal SIGABRT shown if i add this line mapView.isMyLocationEnabled = true self.view = mapView let marker = GMSMarker() marker.position = CLLocationCoordinate2DMake(latitude, Longitude) marker.title = "Me" marker.map = mapView mapView.selectedMarker = marker } func mapView(_ mapView: GMSMapView, markerInfoWindow marker: GMSMarker) -> UIView? { let infoWindow = Bundle.main.loadNibNamed("CustomInfoWindow", owner: self.view, options: nil)!.first! as! CustomInfoWindow infoWindow.title.text = marker.title return infoWindow } 

mi investigación:

  1. https://developers.google.com/maps/documentation/ios-sdk/marker
  2. https://developers.google.com/maps/documentation/ios-sdk/reference/protocol_g_m_s_map_view_delegate-p
  3. https://forums.developer.apple.com/thread/8462
  4. http://kevinxh.github.io/swift/custom-and-interactive-googlemaps-ios-sdk-infowindow.html
  5. https://productforums.google.com/forum/#!topic/maps/w0sP7r3XAF4
  6. Custom InfoWindow para marcador Google Maps SDK, Swift 2.0
  7. https://www.youtube.com/watch?v=ILiBXYscsyY
  8. Vista de anotación personalizada en SDK de Google Maps
  9. ¿Crear window de información personalizada de forma rápida con el sdk de iOS de Google Maps?
  10. ¿Cómo mostrar una window de información en iOS Google Maps sin tocar en Marker?
  11. Ventana de información personalizada en IOS google maps sdk
  12. IOS Google Map Error de InfoWindow Xib personalizado
  13. Cambio de tamaño de la window de información de Google Maps basado en el contenido interno
  14. Ventana de información personalizada para Google Maps
  15. Problema de InfoWindows personalizado -Google Maps iOS SDK-
  16. ¿Cómo personalizar la window de información de google map iOS SDK?
  17. swift 3 google maps custom infowindow
  18. Cómo inicializar una class UIView con un file xib en Swift, iOS
  19. https://github.com/ziyang0621/GoogleMaps-Swift/blob/master/GoogleMapSwift/ViewController.swift
  20. https://github.com/ryanmaxwell/GoogleMapsCalloutView
  21. Implementación de markerInfoWindow personalizado en rápido no funciona
  22. https://codedump.io/share/hh7CO7c2j3PI/1/custom-infowindow-for-marker-google-maps-sdk-swift-20

¿Implementaste GMSMapViewDelegate?

 ViewController: GMSMapViewDelegate { ... } 

Parece que está recibiendo el error (locking) porque está configurando el delegado en sí mismo, pero su controller no se ajusta a ese protocolo.