AValidations Android 表单验证

我要开发同款
匿名用户2014年11月22日
33阅读
开发技术Java
所属分类AndroidUI组件、手机/移动开发、Android UI 组件
授权协议Apache

作品详情

AValidations是一个免费的、开源的、简易的、遵循ApacheLicence2.0开源协议发布,超级容易扩展的android表单验证的小框架

使用方法:

1.下载zip或者克隆AValidations项目2.导入Eclipse,右键工程->preference->Android->library->Add,选择AValidations工程加入后apply应用3.继承ValidationExecutor写出自己的校验器:

public class UserNameValidation extends ValidationExecutor {    public boolean doValidate(Context context, String text) {        String regex = "^[a-zA-Z](?=.*?[a-zA-Z])(?=.*?[0-9])[a-zA-Z0-9_]{7,11}$";        boolean result = Pattern.compile(regex).matcher(text).find();        if (!result) {            Toast.makeText(context, context.getString(R.string.e_username_hint), Toast.LENGTH_SHORT).show();            return false;        }        return true;    }}

4.使用EditTextValidator进行校验:

public class LoginActivity extends Activity implements OnClickListener{    private EditText usernameEditText;    private EditText passwordEditText;    private Button loginButton;    private EditTextValidator editTextValidator;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_login);        usernameEditText = (EditText) findViewById(R.id.login_username_edittext);        passwordEditText = (EditText) findViewById(R.id.login_password_edittext);        loginButton = (Button) findViewById(R.id.login_button);        loginButton.setOnClickListener(this);        editTextValidator = new EditTextValidator(this)            .setButton(loginButton)            .add(new ValidationModel(usernameEditText,new UserNameValidation()))            .add(new ValidationModel(passwordEditText,new PasswordValidation()))            .execute();    }    @Override        public void onClick(View v) {            switch (v.getId()) {            case R.id.login_button:                if (editTextValidator.validate()) {                    Toast.makeText(this, "通过校验", Toast.LENGTH_SHORT).show();                }                break;            }        }

5.如果需要实现没有填写表单时表单提交按钮不可点击效果需要设置setButton(view)和写Button背景的selector,如:

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="https://schemas.android.com/apk/res/android"><item android:drawable="@drawable/red_btn_normal" android:state_focused="true" android:state_pressed="false"/><item android:drawable="@drawable/red_btn_selected" android:state_focused="true" android:state_pressed="true"/><item android:drawable="@drawable/red_btn_selected" android:state_focused="false" android:state_pressed="true"/><item android:drawable="@drawable/red_btn_disable" android:state_enabled="false"/><item android:drawable="@drawable/red_btn_normal"/></selector>
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论