
saripaar是个android的第三方快速校验,使用注解快速添加验证规则。
public class LoginActivity extends Activity implements
ValidationListener
{
@Required(order = 1, message="用户名不能为空")
private EditText tbxUser=null;
@Required(order = 2,message="密码不能为空")
private EditText tbxPsw =null; private Validator validator; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
//初始化监听
initListener();
//实例化校验类库
validator = new Validator(this); validator.setValidationListener(this);
} /**
* 初始化监听
*/
private void initListener() { Button btn = (Button)this.findViewById(R.id.btnLogin);
tbxUser=(EditText)this.findViewById(R.id.txtUser);
tbxPsw=(EditText)this.findViewById(R.id.txtPassword); btn.setOnClickListener(new OnClickListener(){
public void onClick(View v){
validator.validate();
} });
}
private void login() {
Dialog.showAlert(“Logining”, this );
};
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} @Override
public void preValidation() {
// TODO Auto-generated method stub } @Override
public void onSuccess() {
// TODO Auto-generated method stub
login();
} @Override
public void onFailure(View failedView, Rule<?> failedRule) {
// TODO Auto-generated method stub
String message = failedRule.getFailureMessage(); if (failedView instanceof EditText) { failedView.requestFocus(); ((EditText) failedView).setError(message); } else { Dialog.showToast(message,this); }
} @Override
public void onValidationCancelled() {
// TODO Auto-generated method stub } }