Làm thế nào để đặt các MaximumFractionDigits trong một decimalPattern trong Flutter?

Aug 27 2020

Dựa trên ngôn ngữ người dùng, tôi hiển thị số thập phân, ví dụ: 1234.567 sẽ ở:

  • Hoa Kỳ: 1.234.567
  • NL: 1.234.567

Vì tôi sử dụng: NumberFormat.decimalPattern(locale.toString()).format(1234.567)

Điều đó hoạt động tốt :)

Nhưng bây giờ tôi muốn đặt tối đa. Có một MaximumFractionDigits , nhưng làm thế nào để áp dụng cái này?

Cái này không hoạt động: NumberFormat.decimalPattern(locale.toString(), maximumFractionDigits: 2).format(1234.567)

Trên tiền tệ, nó hoạt động như thế này:NumberFormat.currency(locale: locale.toString(), decimalDigits: 3).format(1234567)

Trả lời

JonnyH Aug 27 2020 at 10:45

Từ một câu hỏi khác:

var forFractions = new NumberFormat();

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

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

print(format(15.501234));

Vì vậy, hãy tạo định dạng của bạn và đặt thuộc tính MaximumFractionDigits sau đó thực thi định dạng.