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 }