iphone objective-c string cllocation

iphone - Cadena a CLLocation latitud y longitud



objective-c string (5)

Creo que necesitas:

LocationAtual.coordinate.latitude = [@"-56.6462520" floatValue]; LocationAtual.coordinate.longitude = [@"-36.6462520" floatValue];

Tengo dos cadenas que representan la latitud y la longitud como: "-56.6462520", y quiero asignarlas a un objeto CLLocation para comparar con mi ubicación actual. Probé el siguiente código pero solo obtengo errores:

CLLocation * LocationAtual = [[CLLocation alloc]init]; LocationAtual.coordinate.latitude = @"-56.6462520"; LocationAtual.coordinate.longitude = @"-36.6462520";

y luego comparar el objeto con mi latitud y longitud de ubicación real. ¿Alguna sugerencia?


La coordenada CLLocation es en realidad un valor de solo lectura

@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;

Así que la mejor manera de asignar datos ficticios a las coordenadas es AMITp.


La latitud y la longitud son valores dobles, por lo que deben asignarse de esta manera.

CLLocation *LocationAtual=[[CLLocation alloc] initWithLatitude:[[location objectForKey:@"latitude"] doubleValue] longitude:[[location objectForKey:@"longitude"] doubleValue]]


No se puede asignar directamente a una coordenada ; es una propiedad de solo lectura de CLLocation.
Utilice el siguiente método de instancia:

- (instancetype)initWithLatitude:(CLLocationDegrees)latitude longitude:(CLLocationDegrees)longitude

ejemplo:

CLLocation *LocationAtual = [[CLLocation alloc] initWithLatitude:-56.6462520 longitude:-36.6462520];


Respuesta rápida para los perezosos:

var LocationAtual: CLLocation = CLLocation(latitude: -56.6462520, longitude: -36.6462520)