Android 非空格式验证框架---Android Validation

Validation是一个简单的函数库,使用注释语法来验证用户输入的表单信息。你仅需编写几行代码就可以实现一些表单验证功能,且显示的所有视图都将反馈给用户。它还带有一个可扩展的在线验证选项,这样你就可以为定制视图编写自己的验证信息及适配器。Validation的功能如下:Required(必填)、NotBlank(非空数据)、Digits(仅数字)、Email(邮箱)、2选1必填项验证、重复密码验证、HttpUrl、手机号码格式等。可以到网上找Android-Validator-master的ADT库,我还没找到有直接jar的库,用Android Studio导入也很简单。

 1 package com.zhang.validationdemo;
 2 
 3 import android.support.v7.app.AppCompatActivity;
 4 import android.os.Bundle;
 5 import android.view.View;
 6 import android.widget.Button;
 7 import android.widget.EditText;
 8 import android.widget.Toast;
 9 
10 import com.throrinstudio.android.common.libs.validator.Form;
11 import com.throrinstudio.android.common.libs.validator.Validate;
12 import com.throrinstudio.android.common.libs.validator.validate.ConfirmValidate;
13 import com.throrinstudio.android.common.libs.validator.validate.OrTwoRequiredValidate;
14 import com.throrinstudio.android.common.libs.validator.validator.NotEmptyValidator;
15 import com.throrinstudio.android.common.libs.validator.validator.PhoneValidator;
16 
17 
18 public class MainActivity extends AppCompatActivity {
19 
20     private EditText et_tel, et_password1, et_password2, et_or1, et_or2;
21     private Button btn_ok;
22     private Form form;
23 
24     @Override
25     protected void onCreate(Bundle savedInstanceState) {
26         super.onCreate(savedInstanceState);
27         setContentView(R.layout.activity_main);
28 
29         et_or1 = (EditText) this.findViewById(R.id.et_or1);
30         et_or2 = (EditText) this.findViewById(R.id.et_or2);
31         et_password1 = (EditText) this.findViewById(R.id.et_password1);
32         et_password2 = (EditText) this.findViewById(R.id.et_password2);
33         et_tel = (EditText) this.findViewById(R.id.et_tel);
34         btn_ok = (Button) this.findViewById(R.id.btn_ok);
35 
36         form = new Form();
37 
38         Validate telValidate = new Validate(et_tel);
39         telValidate.addValidator(new NotEmptyValidator(this));// 手机号非空
40         telValidate.addValidator(new PhoneValidator(this));// 手机号格式验证
41 
42         ConfirmValidate confirmValidate = new ConfirmValidate(et_password1, et_password2);// 重复密码验证
43 
44 //        confirmValidate.addValidator(new NotEmptyValidator(this));// 密码非空验证
45         OrTwoRequiredValidate orValidate = new OrTwoRequiredValidate(et_or1,
46                 et_or2);// 二选一必填项验证
47 
48         form.addValidates(orValidate);
49         form.addValidates(confirmValidate);
50         form.addValidates(telValidate);
51 
52         btn_ok.setOnClickListener(new View.OnClickListener() {
53 
54             @Override
55             public void onClick(View arg0) {
56                 boolean isOk = form.validate();
57                 if (isOk) {
58                     Toast.makeText(MainActivity.this, "验证通过",
59                             Toast.LENGTH_SHORT).show();
60                 } else {
61                     Toast.makeText(MainActivity.this, "验证不通过",
62                             Toast.LENGTH_SHORT).show();
63                 }
64             }
65         });
66     }
67 }

 

posted @ 2016-12-21 20:47  changchou  阅读(2548)  评论(0编辑  收藏  举报