Android 用于键入许可证的编辑文本

Android 用于键入许可证的编辑文本,android,android-edittext,hint,Android,Android Edittext,Hint,在我的android应用程序上,当应用程序第一次运行时,用户必须键入许可证。许可证的格式是####-XXX-####-####其中#是一个数字,X是一个字符。我把格式作为提示,但它是不够的。我怎么能这样做,用户不输入-,它只是出现在3个字符之后 更新: 这是我的代码,它是有效的: licenseEditText.addTextChangedListener(new TextWatcher() { public void afterTextChanged(Editable

在我的android应用程序上,当应用程序第一次运行时,用户必须键入许可证。许可证的格式是
####-XXX-####-####
其中
#
是一个数字,
X
是一个字符。我把格式作为提示,但它是不够的。我怎么能这样做,用户不输入-,它只是出现在3个字符之后

更新:

这是我的代码,它是有效的:

licenseEditText.addTextChangedListener(new TextWatcher() {

            public void afterTextChanged(Editable s) {
                System.out.println("afterTextChanged");
                if (s.length() == 3) {
                    s.append("-");
                }
                if (s.length() == 7) {
                    s.append("-");
                }
                if (s.length() == 11) {
                    s.append("-");
                }
                if (s.length() == 15)
                    ok.performClick();
            }

            public void beforeTextChanged(CharSequence s, int start, int count,
                    int after) {
                System.out.println("beforeTextChanged");
            }

            public void onTextChanged(CharSequence s, int start, int before,
                    int count) {
                System.out.println("onTextChanges");

            }
        });

设置一个
TextWatcher
,在其内部将插入的文本与
常规表达式进行比较。并在前3个字符后加上其他代码,如“-”到插入的字符集

设置一个
TextWatcher
,在其内部将插入的文本与
常规表达式进行比较。并在前3个字符后加上其他代码,如“-”到插入的字符集

您可以使用4个EditText并向其附加文本-类似windows的许可证输入

您可以使用4个EditText并向其附加文本-类似windows的许可证输入

尝试使用%operator

if( s.length() == 15) {
   // s.length() = 15
} else if( s.length() % 4 == 3) {
   // s.length = {3, 7, 11, 19, ....}
   // so s.length != 15
}

这样您就减少了代码重复。有关更多信息,请检查:

尝试使用%运算符

if( s.length() == 15) {
   // s.length() = 15
} else if( s.length() % 4 == 3) {
   // s.length = {3, 7, 11, 19, ....}
   // so s.length != 15
}

这样您就减少了代码重复。有关更多信息,请查看:

@Shailendra一个例子会很有帮助:)这是我自己的想法,所以无法导航到任何url。我从不喜欢为别人写完整的代码。Thanks@Shailendra举个例子会很有帮助:)这是我自己的想法,所以不能导航到任何url。我从不喜欢为别人写完整的代码。谢谢