我在Cocoa中遇到NSTextField问题。有没有办法从NSTextField中删除区域设置
我希望用户只输入0.6,0.7这样的值,但如果用户不是来自美国,则他被迫输入这样的0,6,0,7
因此,如果用户不是美国用户,如果他输入0.7 [textField floatValue]将返回0 如果用户是US并且他输入0,7 [textField floatValue]将返回0
好吧,让我说这是我可以接受但我想格式化值并只显示3位小数
这对美国有效但对非美国无效,即使价值是正确的浮点数(例如0.3) [textField setStringValue:[NSString stringWithFormat:@“%。3f”,value]];
textfield的类型为NSTextField
谢谢!
答案 0 :(得分:2)
您应该使用NSNumberFormatter
代替+[NSString stringWithFormat:]
。事实上,使用NSNumberFormatter
可以:
以及其他功能。
如果NSTextField
位于nib文件中,Interface Builder / Xcode 4允许您将formatter
插座链接到NSNumberFormatter
实例。您也可以通过将-setFormatter:
发送到文本字段来以编程方式执行此操作。