Tôi muốn biến nó thành một trong những UILabels của tôi chỉ hiển thị tối đa 3 chữ số. Vì vậy, nếu giá trị liên quan là 3.224789, tôi muốn xem 3.22. Nếu giá trị là 12.563, tôi muốn xem 12.5 và nếu giá trị là 298.38912 thì tôi muốn xem 298. Tôi đã cố gắng sử dụng NSNumberFormatter để thực hiện việc này, nhưng khi tôi đặt các chữ số có nghĩa tối đa là 3 nó luôn có 3 chữ số sau dấu thập phân. Đây là mã:NSNumberFormatter để hiển thị tối đa 3 chữ số
NSNumberFormatter *distanceFormatter = [[[NSNumberFormatter alloc] init] autorelease];
[distanceFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[distanceFormatter setAlwaysShowsDecimalSeparator:NO];
[distanceFormatter setMaximumSignificantDigits:3];
Tôi luôn nghĩ 'chữ số có nghĩa' nghĩa là tất cả các chữ số, trước và sau dấu thập phân. Dù sao, là có một cách để hoàn thành điều này bằng cách sử dụng NSNumberFormatter?
Cảm ơn!
Có, công trình này rất tuyệt. Đặt cờ 'usesSignificantDigits' thành YES là chìa khóa cho giải pháp này cho OP. Tôi chỉ sử dụng điều này, và thực sự nó hoạt động trên các điểm thập phân, ví dụ nó chuyển đổi $ 19,17 đến $ 19,20. –
vui lòng kiểm tra câu hỏi của tôi http://stackoverflow.com/questions/35112206/how-to-show-only-first-two-numbers-in-nsnumberformatter. Nó không hiệu quả với tôi trong Swift – Alexander