2016-11-10 3 views

ответ

0

Это довольно просто: Деление на 1000.

+0

но где я буду делить на 1000 можно сказать, у меня еще некоторые детали. –

0

По разделяй someNumber с 1000.

NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"]; 
someNumber = [someNumber floatValue] * 1000; 
NSString *someString = [someNumber stringValue]; 
+0

Что такое «чтение» здесь? – NSNoob

+0

извините. Проверь сейчас – KKRocks

0

1 метр равен 0,001 KM (как 1/1000 = 0,001).

Таким образом, вы можете просто умножить значение, получаемое от API, с помощью 0.001, и вы получите ответ в KM.

NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"]; 
float convertedToKM = [someNumber floatValue]*0.001; 
someNumber = [NSNumber numberWithFloat:convertedToKM]; 
NSString *someString = [someNumber stringValue]; 
_lbldistance.text=someString; 

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

NSNumber *someNumber = [[_dict2 objectForKey:@"location"] objectForKey:@"distance"]; 
float convertedToKM = [someNumber floatValue]*0.001; 
NSString *someString = [NSString stringWithFormat:@"%.02f", convertedToKM]; 
_lbldistance.text=someString; 
1

Если вы даже хотите включить km в строке использовать NSLengthFormatter

NSNumber *someNumber = @1568; 
NSLengthFormatter *formatter = [[NSLengthFormatter alloc] init]; 
NSString *distanceInKM = [formatter stringFromMeters:someNumber.doubleValue]; 
NSLog(@"%@", distanceInKM); // 1.568 km