16

in Objective C (non ho alcuna esperienza con esso) è possibile inizializzare un oggetto CLLocation con latitudine e longitudine piace questo:inizializzare un oggetto CLLocation in rapido con la latitudine e la longitudine

CLLocation *myLocation = [[CLLocation alloc] initWithLatitude:your_latitiude_value longitude:your_longitude_value]; 

Ma come posso fare in Swift?

ho provato questo,

let loc_coords = CLLocationCoordinate2D(latitude: your_latitiude_value, longitude: your_longitude_value) 

let loc = CLLocation().coordinate(loc_coords) 

ma ottengo questo errore:

non può invocare "punto" con una lista di argomenti di tipo '(CLLocationCoordiate2D)'

ho bisogno di essere un oggetto CLLocation come voglio utilizzare il metodo distanceFromLocation all'interno di locationManager.

Spero che tu possa aiutare, grazie!

risposta

21

Non sono vicino al mio Mac per testarlo ma il seguente dovrebbe funzionare. Basta passare le vostre lat e lon valori al di inizializzazione CLLocaion in questo modo:

let myLocation = CLLocation(latitude: your_latitiude_value, longitude: your_longitude_value) 

Per avere un riferimento, puoi leggere la documentation

+1

Sì, ce l'hai, e hai premuto il tasto di ritorno prima di me (sono andato a verificarlo in un parco giochi, quindi sono sicuro che sia corretto.) –

+0

Bah naturalmente, questo è logico. Ma grazie mille! –

8

Se invece si è l'inizializzatore che prende un lat e lungo, il codice può apparire come questo:

let latitude: CLLocationDegrees = 37.2 
let longitude: CLLocationDegrees = 22.9 

let location: CLLocation = CLLocation(latitude: latitude, 
    longitude: longitude) 

Ci sono altri inizializzatori che prendono più parametri, ma non ti ho chiesto di quelli.

+0

Grazie molto! –

Problemi correlati