Ios 如何在不考虑区域设置的情况下强制使用带点而不是逗号的快速小数点?

Ios 如何在不考虑区域设置的情况下强制使用带点而不是逗号的快速小数点?,ios,iphone,Ios,Iphone,在Swift中,当我们选择键盘样式作为十进制键盘时,它会显示10个数字和分隔符,具体取决于您所在的国家。例如,在俄罗斯,默认的十进制分隔符是“”,而在美国则是“” 在我的应用程序中,我只想显示带点“.”的小数点,不管你在哪里 我不想发生这种事 我想在每台设备上都发生 它不是关于显示正确的键盘语言 这是关于强制十进制分隔符符号为“.”(点),无论应用程序用户的位置如何 例如,我们可以从产品>方案>编辑方案>选项>应用区域>设置为我们强制本地化。但我只需要更改十进制符号,而不是整个本地化。对文本字段

在Swift中,当我们选择键盘样式作为十进制键盘时,它会显示10个数字和分隔符,具体取决于您所在的国家。例如,在俄罗斯,默认的十进制分隔符是“”,而在美国则是“”

在我的应用程序中,我只想显示带点“.”的小数点,不管你在哪里

我不想发生这种事
我想在每台设备上都发生

它不是关于显示正确的键盘语言
这是关于强制十进制分隔符符号为“.”(点),无论应用程序用户的位置如何

例如,我们可以从产品>方案>编辑方案>选项>应用区域>设置为我们强制本地化。但我只需要更改十进制符号,而不是整个本地化。

对文本字段进行子类化,覆盖并返回俄文(

我知道这不再是2017年,而是。。。 重写UITextField非常简单

class EnglishTextField: UITextField {
    override var textInputMode: UITextInputMode? { return EnglishInputMode() }
}
class EnglishInputMode : UITextInputMode {
    override var primaryLanguage: String? { "en-US" }
}
然后在情节提要中UITextField的标识检查器中,将类(在顶部)设置为EnglishTextField

除了一个问题外,这个方法非常有效:2019年,在显示键盘之前,从未查询过“primaryLanguage”,因此根本没有任何帮助


我仍然希望自己能找到答案。在我的例子中,我使用“十进制键盘”来允许输入IP地址,所有国家/地区的IP地址都是点十进制。

如何对我的文本字段进行子类化?它提供了
@IBOutlet弱var rateTextField:FloatingTextField@TamásSengel对这个问题的编辑清楚地表明,它不再是一个可能的重复。