2016-09-04 7 views
0

В настоящее время я PFGeoPoint на синтаксический сервере, который я могу успешно извлекать, выполнив следующие действия (в Swift):Получение Lat/Long Out Of Разбор PFGeoPoint

let geo = listingObject?.objectForKey("geo") 
// <PFGeoPoint: 0x7ff37d184840, latitude: 51.510005, longitude: -0.128493> 

Что я сейчас хочу сделать, это получить широта и долгота из этого в свои собственные переменные.

Когда я создаю карту аннотацию к примеру следующие работы:

let anno = mapAnnotation(coordinate: CLLocationCoordinate2D(latitude: (geo?.latitude)!, longitude: (geo?.longitude)!)) 

Однако это приводит к ошибке:

let latitude = geo?.latitude 
// Ambiguous use of 'latitude' 

Может кто-нибудь мне точку в правильном направлении?

ответ

2

objectForKey возвращает AnyObject, компилятор не знает, что тип PFGeoPoint. Решение состоит в том, чтобы присвоить значение правильному типу.

А при использовании дополнительных привязок вы можете избавиться от всех ?! марок

if let geo = listingObject?.objectForKey("geo") as? PFGeoPoint { 
    let anno = mapAnnotation(coordinate: CLLocationCoordinate2D(latitude: geo.latitude, longitude: geo.longitude) 
}