Генерация строки из CLLocationDegrees, например в NSLog или StringWithFormat - PullRequest
10 голосов
/ 25 августа 2009

Hello Stacked-Experts!

Мой вопрос: как сгенерировать строку из значения CLLocationDegrees?

Неудачные попытки:

1. NSLog(@"Value: %f", currentLocation.coordinate.latitude); //Tried with all NSLog specifiers.
2. NSNumber *tmp = [[NSNumber alloc] initWithDouble:currentLocation.coordinate.latitude];
3. NSString *tmp = [[NSString alloc] initWithFormat:@"%@", currentLocation.coordinate.latitude];

Когда я смотрю в определении CLLocationDegrees, в нем четко говорится, что это двойное число:

typedef double CLLocationDegrees;

Что мне здесь не хватает? Это сводит меня с ума ... Пожалуйста, помогите спасти мой разум!

Спасибо заранее и наилучшими пожеланиями. // Abeansits

Ответы [ 3 ]

34 голосов
/ 25 августа 2009

Это правильно:

NSLog(@"Value: %f", currentLocation.coordinate.latitude); //Tried with all NSLog specifiers.
NSNumber *tmp = [[NSNumber alloc] initWithDouble:currentLocation.coordinate.latitude];

Это неправильно, так как координата.latitude не является объектом, как может ожидать nsstring.

NSString *tmp = [[NSString alloc] initWithFormat:@"%@", currentLocation.coordinate.latitude];

Если вы хотите NSString:

myString = [[NSNumber numberWithDouble:currentLocation.coordinate.latitude] stringValue];

или

NSString *tmp = [[NSString alloc] initWithFormat:@"%f", currentLocation.coordinate.latitude];

Marco

2 голосов
/ 22 июля 2016

Swift версия:

Широта в строку:

var latitudeText = "\(currentLocation.coordinate.latitude)"

или

let latitudeText = String(format: "%f", currentLocation.coordinate.latitude)
0 голосов
/ 26 июня 2019

формат Obj-C

[[NSString alloc] initWithFormat:@"%f", coordinate.latitude];

Свифт формат

String(format: "%f", coordinate.latitude)
...