UITextField中的C#Monotouch电话号码格式

时间:2015-09-11 13:40:01

标签: c# xamarin xamarin.ios uitextfield phone-number

如何格式化或创建UITextField(使用Xamarin / C#),允许输入电话号码为"(xxx)xxx-xxxx"

括号和连字符可以是动态的或静态的。对此并不十分刻板。我可以为3部分手机创建三个不同的UITextFields,并为"(",")"和" - ";但不是&看起来这是一个很好的方法。宁可做正确而不是破解它。

有任何建议或想法吗?肯定有更好的办法。我找到了这个: UITextField for Phone Number

但我不明白目标-c。也许有人可以帮助翻译,如果这是解决方案,即我有正则表达式部分。

1 个答案:

答案 0 :(得分:2)

取决于您的具体要求:

  1. 您是否希望在用户输入时格式化文本?
  2. 您希望在用户完成输入后对文本进行格式化吗?
  3. 要完成上述任一方案,您只需订阅相应的事件并执行格式化逻辑。

    对于方案1: 订阅ValueChanged上的UITextField活动。每次添加或删除字符时都会触发此事件。现在,您可以定义代码以在用户键入时格式化电话号码

    对于方案2: 订阅EditingDidEndOnExit上的UITextField活动。一个编辑完成后将触发此事件,文本字段不再处于焦点。现在,您可以在此处定义代码以格式化电话号码