// Hier sind einige weitere Informationen zum Problem = Es wird versucht, MapKit-Standortaktualisierungen ohne Aufforderung zur Standortautorisierung zu starten. Muss zuerst - [CLLocationManager requestWhenInUseAuthorization] oder - [CLLocationManager requestAlwaysAuthorization] aufrufen.Ich versuche, meinen aktuellen Standort auf einer Karte zu zeigen, aber wenn ich meinen Code im Simulator starte, funktioniert es nicht
import UIKit
import MapKit
import CoreLocation
class ViewController: UIViewController, MKMapViewDelegate, CLLocationManagerDelegate {
@IBOutlet var myMap : MKMapView!
let locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
myMap.showsUserLocation = true }
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let locValue:CLLocationCoordinate2D = manager.location!.coordinate
print("locations = \(locValue.latitude) \(locValue.longitude)")
}
func locationManager(manager: CLLocationManager, didFailWithError error: NSError)
{
print("Errors: " + error.localizedDescription)
}
@IBAction func satelliteView(){
myMap.mapType = MKMapType.Satellite
}
@IBAction func normalView(){
myMap.mapType = MKMapType.Standard
}
@IBAction func pin(sender: UILongPressGestureRecognizer) {
let location = sender.locationInView(self.myMap)
let lCoord = self.myMap.convertPoint(location, toCoordinateFromView: self.myMap)
let anno = MKPointAnnotation()
anno.coordinate = lCoord
anno.title = "store"
anno.subtitle = "loctaion of Store"
self.myMap.removeAnnotations(myMap.annotations)
self.myMap.addAnnotation(anno)
}
}
Bitte erklären, was Sie doesn bedeuten‘. t Arbeit - sonst ist es schwer zu wissen, wie ich Ihnen helfen kann – Feldur
Wenn ich den Simulator runt zeige es nur eine Weltkarte und zeigt nicht auf meine aktuelle Position überhaupt –
Sie ignorieren, was der Standortdelegat Ihnen anderen sendet als es auszudrucken, deshalb wird Ihr aktueller Standort nicht angezeigt. Was macht die "Pin" -Funktion, wenn aktiviert? – Feldur