Вам нужно использовать %f
спецификатор формата для float, а не %@
.
NSString *str = [NSString stringWithFormat:@"%f", myFloat];
Чтобы использовать определенное количество цифр после десятичной точки, используйте %.nf
, где n - количество цифр после десятичной точки.
// 3 digits after decimal point
NSString *str = [NSString stringWithFormat:@"%.3f", myFloat];
Obj-C использует форматирование в стиле C printf
. Пожалуйста, проверьте printf man page для всех других возможных форматов.