如果我使用小数点输入数字,则小数点会根据国家和地区格式而变化。
可以作为点“。”或作为逗号“,”
而且我无法控制应用程序在哪个设备上使用。
如果区域格式使用逗号,计算就会出错。放入 5,6 与有时只放入 5 和同一时间放入 56 是相同的。
即使我以编程方式允许两者。和 ,作为 TextField 中的输入。
如何在不使用数字标点符号的情况下解决这个问题,并且可能还必须给出指示以避免使用逗号“,”输入
它只是我需要的数字和小数的输入,而且小数垫要好得多。
你应该使用NSNumberFormatter为此,因为可以设置它来处理不同的区域设置。
创建一个格式化程序:
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setLocale:[NSLocale currentLocale]];
Use it:
NSNumber *number = [numberFormatter numberFromString: string]; //string is the textfield.text
如果设备的区域设置设置为区域设置,其中小数点分隔符,
,数字键盘也将使用 is 和格式化程序。在那些分组分隔符上.
对于其他区域设置则反之亦然。
NSNumberFormatter 非常复杂,你应该阅读它的部分数据格式化指南, 也。它还知道很多货币处理(显示,而不是转换),如果您的应用程序确实处理这些。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)