#ios #nsstring #stringwithformat
#iOS #nsstring #stringwithformat
Вопрос:
double knots = currentLocation.speed*1.943844492;
NSString *speed = [NSString stringWithFormat:@".1f", knots];
В результате получается обычная одинарная десятичная строка с плавающей запятой без начальных нулей.
Цель состоит в том, чтобы получить максимум 3 начальные цифры и один десятичный знак.
Ответ №1:
3
— это общая длина, включающая десятичную точку и десятичную цифру. Измените 3
на 5
, и вы должны получить то, что хотите:
NSString *speed = [NSString stringWithFormat:@".1f", knots];
Комментарии:
1. Спасибо, rmaddy! Намного тоньше, чем при использовании NSNumberFormatter!
2. Вы должны использовать
NSNumberFormatter
так, чтобы значение выглядело подходящим для пользователя в зависимости от его локали.