Jak ustawić maximumFractionDigits w decimalPattern we Flutter?

Aug 27 2020

W oparciu o ustawienia regionalne użytkownika pokazuję liczby dziesiętne, na przykład: 1234,567 będzie w:

  • USA: 1,234,567
  • NL: 1.234,567

Dlatego używam: NumberFormat.decimalPattern(locale.toString()).format(1234.567)

Działa dobrze :)

Ale teraz chcę ustawić maksymalne cyfry. Istnieje maksymalna liczba cyfr frakcji , ale jak zastosować tę?

Ten nie działa: NumberFormat.decimalPattern(locale.toString(), maximumFractionDigits: 2).format(1234.567)

Na walucie działa to tak:NumberFormat.currency(locale: locale.toString(), decimalDigits: 3).format(1234567)

Odpowiedzi

JonnyH Aug 27 2020 at 10:45

Z innego pytania:

var forFractions = new NumberFormat();

forFractions.minimumFractionDigits = 2;
forFractions.maximumFractionDigits = 2;

format(num n) => forFractions.format(n);

print(format(15.501234));

Stwórz więc swój format i ustaw atrybut maximumFractionDigits, a następnie wykonaj format.