无法使用swift ios在mapView中检索lat和long位置
我无法在此处检索我先前使用关键字“klat”和“klong”中的NSUserDefaults存储在应用程序中的地图位置。它显示以下错误: 无法将类型为“\u NSCFString”(0x1604da4)的值强制转换为“NSNumber”(0x971800)无法使用swift ios在mapView中检索lat和long位置,ios,swift,mkmapview,Ios,Swift,Mkmapview,我无法在此处检索我先前使用关键字“klat”和“klong”中的NSUserDefaults存储在应用程序中的地图位置。它显示以下错误: 无法将类型为“\u NSCFString”(0x1604da4)的值强制转换为“NSNumber”(0x971800) 使用以下代码存储纬度和经度 let latitude = NSUserDefaults .standardUserDefaults().valueForKey(klat) as! Double let longitude = NSUser
使用以下代码存储纬度和经度
let latitude = NSUserDefaults .standardUserDefaults().valueForKey(klat) as! Double
let longitude = NSUserDefaults .standardUserDefaults().valueForKey(klong) as! Double
let location:CLLocationCoordinate2D = CLLocationCoordinate2DMake(latitude, longitude)
//Second Location lat and long
let latitudeSec:CLLocationDegrees = 11.0100
let longitudeSec:CLLocationDegrees = 77.3620
let locationSec:CLLocationCoordinate2D = CLLocationCoordinate2DMake(latitudeSec, longitudeSec)
let span:MKCoordinateSpan = MKCoordinateSpanMake(1, 1)
let region:MKCoordinateRegion = MKCoordinateRegionMake(location, span)
mapView.setRegion(region, animated: true)
let myAn1 = MyAnnotation(title: "Office", coordinate: location,subtitle: "MyOffice");
和检索
[[NSUserDefaults standardUserDefaults] setDouble:latitude forKey:klat]
[[NSUserDefaults standardUserDefaults] setDouble:longitude forKey:klong]
为什么要存储在这里?我已经在另一个类中完成了。看起来您正在存储字符串并尝试检索Double。您可以显示代码中设置ObjectBTW NSUserDefaults的部分,其中有一个名为setDouble(forKey:)的方法来存储它和doubleForKey()要检索itAnyway,这就是我说的,您保存了一个字符串。使用我说的方法保存double
currentLocation.coordinate.latitude
let latitude = NSUserDefaults.standardUserDefaults().doubleForKey(klat)
let latitude = NSUserDefaults.standardUserDefaults().doubleForKey(klong)