我有一份注册表格,我需要在提交前进行验证.表单包含以下字段:姓名,电子邮件,联系电话和密码.我需要名称有一个值,电子邮件要有正确的格式,联系号码应至少为10个数字,密码至少为6个字符.
小智 9
试试这个
vUsername = etUsername.getText().toString();
vFirstname = etFirstname.getText().toString();
vEmail = etEmail.getText().toString();
vPwd = etPwd.getText().toString();
vCpwd = etCpwd.getText().toString();
if("".equalsIgnoreCase(vUsername) //vUsername.equalsIgnoreCase("") could lead to NPE
|| "".equalsIgnoreCase(vFirstname)
|| "".equalsIgnoreCase(vEmail)
|| "".equalsIgnoreCase(vPwd)
|| "".equalsIgnoreCase(vCpwd) )
{
Toast.makeText(userRegistration.this, "All Fields Required.",
Toast.LENGTH_SHORT).show();
}
checkemail(vEmail);
if(emailcheck==true)
{
// your code here
}
public void checkemail(String email)
{
Pattern pattern = Pattern.compile(".+@.+\\.[a-z]+");
Matcher matcher = pattern.matcher(email);
emailcheck = matcher.matches();
}
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用验证库在Android上执行验证.它由注释驱动,从而减少了大量的锅炉板代码.使用此应用程序解决时的用例如下所示:
@Required(order = 1)
@Email(order = 2)
private EditText emailEditText;
@Password(order = 3)
@TextRule(order = 4, minLength = 6, message = "Enter at least 6 characters.")
private EditText passwordEditText;
@ConfirmPassword(order = 5)
private EditText confirmPasswordEditText;
@Checked(order = 6, message = "You must agree to the terms.")
private CheckBox iAgreeCheckBox;
Run Code Online (Sandbox Code Playgroud)
现在缺少文档,但主页上的注释示例应该可以帮助您入门.您还可以阅读此博客,了解如何在库存规则不符合您的需求时创建自定义规则.
PS:我是这个图书馆的作者.
| 归档时间: |
|
| 查看次数: |
17913 次 |
| 最近记录: |