Swift:
var initialLocation :CLLocation?
var updatedUserLocation :CLLocation?
var distanceBetweenLocations: CLLocationDistance?
//MK MapView Delegate
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
updatedUserLocation = locations.last
distanceBetweenLocations = updatedUserLocation!.distanceFromLocation(initialLocation!)
//convert To Miles
distanceBetweenLocations = Utility.convertCLLocationDistanceToMiles(distanceBetweenLocations)
//Setting Distance Value
distanceLabel.text = String(format: " Distance : %.2f ", distanceBetweenLocations!)
}
Nota: tengo clase de utilidad llamada que sirve a los métodos comunes de clase de todo el proyecto. Esto es para una mejor reutilización y reducción del código.
// Utility.swift
import UIKit
import Foundation
import CoreLocation
class Utility {
class func convertCLLocationDistanceToMiles (var targetDistance : CLLocationDistance?) -> CLLocationDistance {
targetDistance = targetDistance!*0.00062137
return targetDistance!
}
class func convertCLLocationDistanceToKiloMeters (var targetDistance : CLLocationDistance?) -> CLLocationDistance {
targetDistance = targetDistance!/1000
return targetDistance!
}
}
El error que está recibiendo puede ser útil (para otros). Por favor inclúyalo. – KevinDTimm