我正在使用库"PhoneNumberKit“来格式化我在应用程序上使用的UITextfield,我用它来输入电话号码。
我使用PartialFormatter将输入格式化为电话号码掩码样式。
@IBAction func onPhoneNumberChanged(_ sender: Any) {
if (phoneNumberTextField.text?.count ?? 0 < 15) {
phoneNumberTextField.text = PartialFormatter().formatPartial(phoneNumberTextField.text ?? "")
} else {
phoneNumberTextField.deleteBackward()
}
}我的问题是它总是将字符串格式化为本地电话号码,我想强制它将其格式化为美国电话号码掩码。
图书馆说:
The default region code is automatically computed but can be overridden if needed.但没有给出任何强制区域代码到特定国家的示例
下面是我正在使用的库:https://github.com/marmelroy/PhoneNumberKit
这里有没有人有关于如何做的例子?
谢谢
发布于 2018-12-04 16:40:58
通过执行以下操作来修复它:
phoneNumberTextField.text = PartialFormatter(phoneNumberKit: PhoneNumberKit(), defaultRegion: "US", withPrefix: true).formatPartial(phoneNumberTextField.text ?? "")发布于 2020-03-14 18:53:08
默认区域代码是自动计算的,但如果需要可以覆盖,如下所示
class MyTextField: PhoneNumberTextField {
override var defaultRegion: String {
get {
return "US"
}
set {} // exists for backward compatibility
}
}https://stackoverflow.com/questions/53608088
复制相似问题