Mi piacerebbe farlo in modo che uno dei miei UILabels mostri solo un massimo di 3 cifre. Quindi, se il valore associato è 3.224789, mi piacerebbe vedere 3.22. Se il valore è 12.563, mi piacerebbe vedere 12.5 e se il valore è 298.38912 allora mi piacerebbe vedere 298. Ho cercato di utilizzare NSNumberFormatter per realizzare questo, ma quando ho impostato le cifre massime significative a 3 ha sempre 3 cifre dopo la cifra decimale. Ecco il codice:NSNumberFormatter per mostrare un massimo di 3 cifre
NSNumberFormatter *distanceFormatter = [[[NSNumberFormatter alloc] init] autorelease];
[distanceFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[distanceFormatter setAlwaysShowsDecimalSeparator:NO];
[distanceFormatter setMaximumSignificantDigits:3];
ho sempre pensato 'cifre significative' intendevo tutte le cifre, prima e dopo la virgola. Ad ogni modo, c'è un modo per farlo usando NSNumberFormatter?
Grazie!
Sì, questo funziona benissimo. L'impostazione del flag 'usesSignificantDigits' su YES è la chiave per questa soluzione per l'OP. Ho appena usato questo, e in effetti funziona attraverso il punto decimale, ad esempio converte $ 19,17 a $ 19,20. –
si prega di controllare la mia domanda http://stackoverflow.com/questions/35112206/how-to-show-only-first-two-numbers-in-numberformatter. Non funziona per me in Swift – Alexander