似乎是用于设置自定义NSNumberFormatter's
的formatters
方法。 setFormat:
在iPhone上不可用...
所以这...崩溃了我的应用程序:
NSNumberFormatter *lengthFormatter = [[NSNumberFormatter alloc] init];
[lengthFormatter setFormatterBehavior:NSNumberFormatterBehavior10_4];
[lengthFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[lengthFormatter setFormat:@"#,##0.0M"];
这件事发生在别人身上吗?
谢谢,
担
**在下面回答。
NSNumberFormatter
还具有称为setPositiveFormat: setNegativeFormat:
的方法,该方法代替了已贬值的setFormat:
** 最佳答案
是的,它在NSNumberFormatter Class Reference中记录为注释(需要登录)。便条说:
编辑:添加了更多文本来支持后续问题。
您可以将自己的内容重写为类似的内容:
NSNumberFormatter *lengthFormatter = [[NSNumberFormatter alloc] init];
[lengthFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[lengthFormatter setPositiveSuffix:@"M"];
[lengthFormatter setNegativeSuffix:@"M"]; // assuming it can go negative
我建议您看一下我上面链接的文档。它专门用于iPhone版本的NSNumberFormatter,因此没有导致应用程序崩溃的方法。与原始的NSNumberFormatter相比,它还旨在充分利用用户的本地化设置。有多种方法可以限制显示的内容等,同时仍然可以利用用户的偏好。不幸的是,不再有
setFormat:
方法。关于iPhone NSNumberFormatter setFormat :,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/416037/