如何格式化或创建UITextField(使用Xamarin / C#),允许输入电话号码为"(xxx)xxx-xxxx"
括号和连字符可以是动态的或静态的。对此并不十分刻板。我可以为3部分手机创建三个不同的UITextFields,并为"(",")"和" - ";但不是&看起来这是一个很好的方法。宁可做正确而不是破解它。
有任何建议或想法吗?肯定有更好的办法。我找到了这个: UITextField for Phone Number
但我不明白目标-c。也许有人可以帮助翻译,如果这是解决方案,即我有正则表达式部分。
答案 0 :(得分:2)
取决于您的具体要求:
要完成上述任一方案,您只需订阅相应的事件并执行格式化逻辑。
对于方案1:
订阅ValueChanged
上的UITextField
活动。每次添加或删除字符时都会触发此事件。现在,您可以定义代码以在用户键入时格式化电话号码
对于方案2:
订阅EditingDidEndOnExit
上的UITextField
活动。一个编辑完成后将触发此事件,文本字段不再处于焦点。现在,您可以在此处定义代码以格式化电话号码