热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Android字段验证的实例代码

这篇文章主要介绍了Android字段验证的实例代码的相关资料,代码简单易懂,具有参考借鉴价值,需要的朋友可以参考下

先给大家展示效果图:

package com.example.walkerlogin1; 
import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast; 
import com.throrinstudio.android.common.libs.validator.Form; 
import com.throrinstudio.android.common.libs.validator.Validate; 
import com.throrinstudio.android.common.libs.validator.validate.ConfirmValidate; 
import com.throrinstudio.android.common.libs.validator.validate.OrTwoRequiredValidate; 
import com.throrinstudio.android.common.libs.validator.validator.EmailValidator; 
import com.throrinstudio.android.common.libs.validator.validator.NotEmptyValidator; 
import com.throrinstudio.android.common.libs.validator.validator.PhoneValidator; 
import com.throrinstudio.android.common.libs.validator.validator.UrlValidator; 
public class MainActivity extends Activity { 
private EditText etAccount, etNick, etPassword, etMotto, etEmail, 
etCity, etfoot,etHeight,etWeight,etExceptSteps; 
private Button bt_ok; 
private Form form; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
initView(); 
setListener(); 
validateForm(); 
} 
//格式验证 
private void validateForm() { 
// 1. 先创建个表单Form类用来装控件 
form = new Form(); 
// 非空验证 
// 2. 然后创建Validate类,将被验证控件传入 
Validate notEmptyValidate = new Validate(etAccount); 
// 3. 将这个Validate类addValidator加入(如:非空类型NotEmptyVerifior)类型验证类 
NotEmptyValidator notEmpty = new NotEmptyValidator(this); 
notEmptyValidate.addValidator(notEmpty); 
// 二选一 
OrTwoRequiredValidate orTwoRequiredValidate = new OrTwoRequiredValidate( 
etNick, etPassword); 
//密码验证 
Validate notPassword = new Validate(etPassword); 
NotEmptyValidator not2Empty = new NotEmptyValidator(this); 
notPassword.addValidator(not2Empty); 
//城市不能为空 
Validate etCity2 = new Validate(etCity); 
NotEmptyValidator etCity1 = new NotEmptyValidator(this); 
etCity2.addValidator(etCity1); 
//手机号不能为空 
Validate etMotto1 = new Validate(etMotto); 
PhoneValidator phOnevalidator=new PhoneValidator(this); 
etMotto1.addValidator(phonevalidator); 
// 邮件验证 
Validate emailValidate = new Validate(etEmail); 
EmailValidator emailValidator = new EmailValidator(this); 
emailValidator.setDomainName("qq\\.com");// 设置邮件规则:只能是QQ邮箱 
emailValidate.addValidator(emailValidator); 
// 重复密码确认 
// ConfirmValidate cOnfirmValidate= new ConfirmValidate(et_password1, 
// et_password2); 
// 网址 
/*Validate urlValidate = new Validate(et_url); 
UrlValidator urlValidator = new UrlValidator(this); 
urlValidate.addValidator(urlValidator);*/ 
// 4. Form表单addValidates这个Validate类即可 
form.addValidates(notPassword); 
form.addValidates(notEmptyValidate); 
form.addValidates(orTwoRequiredValidate); 
form.addValidates(emailValidate); 
form.addValidates(etCity2); 
form.addValidates(etMotto1); 
//form.addValidates(confirmValidate); 
// form.addValidates(urlValidate); 
} 
private void setListener() { 
bt_ok.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
// 5. 最后调用form.validate()验证即可,返回true表示验证通过。 
boolean flag = form.validate(); 
if(flag){ 
Toast.makeText(MainActivity.this, "验证成功!", Toast.LENGTH_LONG).show(); 
}else{ 
Toast.makeText(MainActivity.this, "验证失败", Toast.LENGTH_LONG).show(); 
} 
} 
}); 
} 
private void initView() { 
etAccount = (EditText) findViewById(R.id.etAccount); 
etNick = (EditText) findViewById(R.id.etNick); 
etPassword = (EditText) findViewById(R.id.etPassword); 
etMotto = (EditText) findViewById(R.id.etMotto); 
etEmail = (EditText) findViewById(R.id.etEmail); 
etCity = (EditText) findViewById(R.id.etCity); 
etfoot = (EditText) findViewById(R.id.etfoot); 
etHeight = (EditText) findViewById(R.id.etHeight); 
etWeight = (EditText) findViewById(R.id.etWeight); 
etExceptSteps = (EditText) findViewById(R.id.etExceptSteps); 
bt_ok = (Button) findViewById(R.id.btnClick); 
} 
} 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

另外还需导入一个类库Android-Validator-master

以上内容是小编给大家介绍的android字段验证的实例代码,希望对大家有所帮助,如果大家想了解更多资讯敬请关注网站!


推荐阅读
  • MyBatis模糊查询和多条件查询一、ISmbmsUserDao层根据姓名模糊查询publicListgetUser();多条件查询publicList ... [详细]
  • Android的四种启动模式
     对Android的启动模式不是很了解,这里记录下简单的理解内容以便日后查看。 Androi的四种启动模式分别为:standard,singleTop,singleTask,sing ... [详细]
  • 一、使用ContentProvider(内容提供者)共享数据ContentProvider在android中的作用是对外共享数据,也就是说 ... [详细]
  • 一、在androidStudio中实现tabs比较简单,新建项目就可以选择tabs模板进行创建,默认实现tabs功能:直接运行项目就可以看到效果:可以说非常简单,但是我们在实际开发 ... [详细]
  • 22.Container With Most Water(能装最多水的容器)
    thecontainercontainsthemos ... [详细]
  • 软件自动化测试的学习路线
    软件自动化测试的学习步骤软件测试交流群关注软件测试技术公众号获取阅读目录软件自动化测试的学习步骤自动化测试的本质自动化测试学习的误区自动化测试的职位自动化测试分类Web自动化 ... [详细]
  • 一、基本Tag1.Tag定义了Item实例,有三个基本的属性来定义一个item实例,大小写敏感。id-每个Item实例的唯一标识type ... [详细]
  • Java发布webservice应用并发送SOAP请求调用
    webservice框架有很多,比如axis、axis2、cxf、xFire等等,做服务端和做客户端都可行,个人感觉使用这些框架的好处是减少了对于接口信息的解析,最主要的是减少了对于传递于网络中XML ... [详细]
  • Flex中使用filter过滤数据 ... [详细]
  • intellij idea修改maven配置时总是恢复默认配置的解决方法idea版本(2020.2.x)_java
    这篇文章主要介绍了intellijidea修改maven配置时总是恢复默认配置的解决方法idea版本(2020.2.x),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考 ... [详细]
  • 大数据分析Python有哪些爬虫框架
    一、ScrapyScrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。。用 ... [详细]
  • nvmw安装,用于控制node版本;
    之前一直使用的是nodev2.2.0版本,挺说新版本的node解决了npm安装插件产生文件夹结构过深的问题,所以就想更新试试;上网一看才发现,尼玛的node已经到了6.+版本了,好 ... [详细]
  • hibernate映射组件映射
    在Hibernate中,component是某个实体的逻辑组成部分,它与实体的根本区别是没有oid(对象标识符),compo ... [详细]
  • 在ROS系统中,参数读写一般通过xml或者yaml格式的文件,其中yaml用得比较多。这是一种可读性高,轻量级的标记语言,简单好用。对于yaml文件,ros中用的较早版本的yaml- ... [详细]
  • 如何理解MyBatis动态SQL
    本篇内容主要讲解“如何理解MyBatis动态SQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解M ... [详细]
author-avatar
手机用户2702932521
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有