2017-09-30 7 views
1

Une fois que je démarre l'application, il devrait charger la carte de la ville où vous vous trouvez. Cela a fonctionné parfaitement dans IOS 9-10. Depuis iOS 11 carte a commencé à agir étrangement. Maintenant, lorsque vous démarrez l'application, il affiche une carte jaune. Si je clique sur le bouton d'accueil, attendez 3-5 secondes et revenez dans l'application, il montrera la carte comme il se doit ... Essayé de déboguer, modifier la structure de mise en page, rien n'a aidé .. Ci-dessous vous pouvez voir des captures d'écran app première fois et après 5 secondes de retour à l'écran d'accueil.MKMapView ne charge pas la carte et affiche le fond jaune

Ajouter à la vue comme ceci:

mapView.isScrollEnabled = false 
mapView.isZoomEnabled = false 
mapView.isPitchEnabled = false 
mapView.isRotateEnabled = false 
mapContainer.addSubview(mapView) 
mapView.fillSuperview() 

puis définissez la carte une fois l'emplacement est détecté comme ceci:

let center = CLLocationCoordinate2D(latitude: mapLatitude - 0.004, longitude: mapLongitude) 
let region = MKCoordinateRegion(center: center, span: MKCoordinateSpan(latitudeDelta: 0.04, longitudeDelta: 0.04)) 
self.mapView.setRegion(region, animated: true) 

Map view on app start enter image description here

+0

Avez-vous essayé sur iOS Simulator ou Device? –

+0

@KosukeOgawa à la fois –

Répondre

-1

Donc, l'erreur était dans un mauvais initialisation . J'ai initialisé mapview en haut du viewController quand j'étais supposé le faire dans viewDidLoad. Cela a réglé le problème.