2

我有以下代码在 Android 2.2 中可以正常工作,以按 555-555-5555 格式化电话号码,但在 4.x 中,它将它们格式化为 555555-555。

inputPhoneNumber = (EditText) findViewById(R.id.inputPhoneNumber);
inputPhoneNumber.addTextChangedListener(new PhoneNumberFormattingTextWatcher());

关于如何修复它的任何建议?

4

2 回答 2

0

还有另一个专门用于格式化电话号码PhoneNumberUtils的 android 类

以及您可以使用的一些方法:

  • formatNumber(String source)分解给定的数字并根据数字所在国家/地区的规则对其进行格式化。
  • formatNumber(Editable text, int defaultFormattingType)就地格式化电话号码。

检查出来。

于 2013-07-05T04:58:10.503 回答
0

@learningslowly 的评论有所帮助,但我发现它仍然不完整。正确和“正常”格式所需的完整允许数字字符串是:

android:digits="0123456789()-+ "

我以前错过了减号、加号和空格。

于 2017-07-30T02:41:51.593 回答