2017-12-03 2 views
-1

Hey, ich habe einige Koordinaten ["37.7", "-122.4"], die ich versuche, um GeoCode umzukehren. So kann ich die Stadt und den Staat für ein einfaches UI Label bekommen. Wenn ich jedoch CLLocation verwende, um den Status über die administrativeArea var/-Methode abzurufen, die standardmäßig mit einer placeMark geliefert wird, wird nil zurückgegeben.ClLocation Placemark liefert keine administrativeArea

▿ einig: 1 Element - 0: San Francisco Bay, San Francisco Bay, San Francisco, Vereinigte Staaten von Amerika @ < + 37,80000000, -122,50000000> +/- 100.00m, Region CLCircularRegion (Kennung:‘< + 37.79999999, -122,50000000> Radius 141,72' , Mitte: < + 37.79999999, -122,50000000>, Radius: 141.72m)

Dies ist, was ich von dem Abschluss-Handler erhalten. Das macht deutlich, dass es keinen Staat gibt, der davon zurückkommt. Warum sollte das sein und wie kann ich noch den Staat bekommen?

Anbei der Block des Codes, der dieses acton steuert, wird jede Hilfe geschätzt.

CLGeocoder().reverseGeocodeLocation(location, completionHandler: { (placeMark, error) in 
      if error != nil{ 
       print("There was an error") 
      }else{ 
       if let place = placeMark?[0]{ 
        print(place) 
        print(place.locality ?? "") 
        print(place.subAdministrativeArea ?? "") 
        let myAttribute = [NSAttributedStringKey.font:UIFont(name: "Times New Roman", size: 15.3)!] 
        let myAttrString = NSAttributedString(string: place.locality ?? "", attributes: myAttribute) 
        locLabel.attributedText = myAttrString 
       } 
      } 

     }) 

Antwort

0

Sie interagieren mit einer Online-Datenbank. Dieser Eintrag in der Datenbank hat keinen Status. Das ist einigermaßen verständlich, weil Sie in einem Wasserbecken des Pazifischen Ozeans zu sein scheinen. es ist nicht im Hoheitsgebiet eines Staates. Aber ob das der Grund ist oder nur eine Kleinigkeit oder ein Fehler in der Datenbank - Sie können nichts dagegen tun. Sie haben diese Datenbank verwendet und Sie müssen akzeptieren, was Sie erhalten.

+0

Sie könnten einen Fehler bei Apple einreichen, wenn Sie der Meinung sind, dass die Datenbank einen Fehler enthält. – matt

+0

Ja, ich habe gerade realisiert, dass ich in einem Gewässer bin –