Derzeit Ortungsdienste Ich gründe, aber aus irgendeinem seltsamen Grund der Tracker-Symbol wird nicht angezeigt: Standorte Tracker-Symbol zeigt sich nicht auf der Karte
Ich weiß, dass es funktioniert, weil, wenn ich einen Stift den Stift hinzufügen richtig erscheint:
ich bin nicht sicher, warum der tracker nicht nach oben zeigt, hier ist der Code:
@IBOutlet weak var map: MKMapView!
let locationsManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
locationsManager.delegate = self
locationsManager.desiredAccuracy = kCLLocationAccuracyBest // sets to best location accuracy
locationsManager.requestWhenInUseAuthorization()// requests user location when app is opened
locationsManager.startUpdatingLocation()// updates user location
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let userLocation: CLLocation = locations[0]
let latitude: CLLocationDegrees = userLocation.coordinate.latitude
let longitude: CLLocationDegrees = userLocation.coordinate.longitude
let latDelta: CLLocationDegrees = 0.05
let longDelta: CLLocationDegrees = 0.05
let span: MKCoordinateSpan = MKCoordinateSpanMake(latDelta, longDelta)
let location: CLLocationCoordinate2D = CLLocationCoordinate2DMake(latitude,longitude)
let region: MKCoordinateRegion = MKCoordinateRegionMake(location, span)
map.setRegion(region, animated: true)
let pin = MKPointAnnotation()
pin.coordinate.latitude = userLocation.coordinate.latitude
pin.coordinate.longitude = userLocation.coordinate.longitude
pin.title = "My current location"
map.addAnnotation(pin)
}
Dies ist schnell und einfach, aber was ist, wenn ich einen Pin zum Standort hinzufügen möchte? Vorher habe ich es in der LocationManager-Funktion gemacht. – SwiftyJD
Es hängt davon ab, wie Sie den Pin hinzufügen möchten. Wenn Sie einfach einen Pin anstelle des blauen Kreises haben möchten, können Sie die 'MKMapViewDelegate' Methode' mapView (_: viewFor:) 'implementieren und eine Pinansicht für die Annotation des Benutzerorts zurückgeben. Wenn Sie eine Reihe von Pins wünschen, während sich der Benutzer bewegt, können Sie die Methode verwenden, die Sie ursprünglich hatten. – Paulw11