Validation的简介
这是一个简单的函数库,使用注释语法来验证用户输入的表单信息。你仅需编写几行代码就可以实现一些表单验证功能,且显示的所有视图都将反馈给用户。它还带有一个可扩展的在线验证选项,这样你就可以为定制视图编写自己的验证信息及适配器了。这里依赖了一个library,需要手动添加到自己的项目中,library项目包下载地址
Validation的功能
- Required (必填)
- NotBlank (非空数据)
- Digits (仅数字)
- Email (电子邮件)
- 2选一必填项验证
- 重复密码验证
- HTTPURL (Http URL)
- 手机号码格式验证
基本用法
- 先创建个表单Form类用来装控件
Form form = new Form();
- 然后创建Validate类,将被验证EditText控件传入
Validate validate = new Validate(editText);
- 将这个Validate类addValidator加入非空类型NotEmptyVerifior, 这里以非空验证进行举例
NotEmptyValidator noEmpty = new NotEmptyValidator(context);
validate.addValidator(noEmpty);
- Form表单addValidates这个Validate类即可
form.addValidates(validate);
- 最后调用form.validate()验证即可,返回true表示验证通过。
form.validate();
实验代码
public class MainActivity extends Activity {
private EditText mail;
private EditText password;
private EditText confirmPassword;
private Form form;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
form = new Form();
Validate mailValidate = new Validate(mail);
EmailValidator emailV = new EmailValidator(this);
mailValidate.addValidator(emailV);
ConfirmValidate confirmV = new ConfirmValidate(password, confirmPassword);
form.addValidates(mailValidate);
form.addValidates(confirmV);
}
private void initView() {
mail = (EditText) findViewById(R.id.mail);
password = (EditText) findViewById(R.id.password);
confirmPassword = (EditText) findViewById(R.id.password_confirm);
}
public void sureOf(View view){
form.validate();
}
}
xml界面比较简单,就是三个EditText和一个按钮,按钮用于点击验证输入格式是否正确,这里就不给出了,同时Library可以根据自己的喜好进行一定的自定义修改。一定要记得Library和主项目要在一个工作空间,比如都在D盘,不然导入Library时会出现红叉叉。