Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用自定义验证类型创建自己的editText?_Android_Validation_Android Edittext_Form Fields_Customizing - Fatal编程技术网

Android 如何使用自定义验证类型创建自己的editText?

Android 如何使用自定义验证类型创建自己的editText?,android,validation,android-edittext,form-fields,customizing,Android,Validation,Android Edittext,Form Fields,Customizing,我想创建我自己的编辑文本字段,用于来自用户的多个条目,这些条目具有不同的必需验证集(电子邮件、电话、信用卡、混合字符)。尝试如下: 信用卡: public boolean有效(EditText et){ 试一试{ 返回validateCardNumber(et.getText().toString()); }捕获(例外e){ 返回false; } } 公共静态布尔validateCardNumber(字符串cardNumber)引发NumberFormatException{ 整数和=0,数字

我想创建我自己的编辑文本字段,用于来自用户的多个条目,这些条目具有不同的必需验证集(电子邮件、电话、信用卡、混合字符)。

尝试如下:

信用卡:

public boolean有效(EditText et){
试一试{
返回validateCardNumber(et.getText().toString());
}捕获(例外e){
返回false;
}
}
公共静态布尔validateCardNumber(字符串cardNumber)引发NumberFormatException{
整数和=0,数字,加数=0;
布尔值=假;
对于(int i=cardNumber.length()-1;i>=0;i--){
digit=Integer.parseInt(cardNumber.substring(i,i+1));
如果(加倍){
加数=数字*2;
如果(加数>9){
加数-=9;
}
}否则{
加数=数字;
}
总和+=加数;
加倍,加倍;
}
返回(总和%10)==0;

}
您可以为不同的editText设置验证,如电子邮件、电话等,您不需要任何自定义editText可能重复我想要更多验证,如信用卡号、ip地址、url验证,如…并且我想从xml中选择这些自定义验证类型。