TextInputLayout输入框验证

<!--
通过修改<color name="colorAccent">#023cfa</color>可以修改正确提示文本的颜色
添加<item name="android:textColorPrimary">@color/textColorPrimary</item>属性可以修改输入文本的颜色
-->
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"> <EditText
android:layout_width="match_parent"
android:layout_height="48dp"/>
</android.support.design.widget.TextInputLayout>
public class MainActivity extends AppCompatActivity {
    private TextInputLayout textInputLayout;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textInputLayout = (TextInputLayout) findViewById(R.id.text_input_layout);
        textInputLayout.setHint("请输入邮箱地址");
        //获取到TextInputLayout包裹的EditText
        EditText editText = textInputLayout.getEditText();
        editText.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            }
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
            }
            @Override
            public void afterTextChanged(Editable s) {
                //如果不包含@认为是非法邮箱地址
                if (!s.toString().contains("@")) {
                    //允许TextInputLayout显示错误信息
                    textInputLayout.setErrorEnabled(true);
                    //设置错误信息
                    textInputLayout.setError("邮箱地址非法");
                } else {
                    textInputLayout.setErrorEnabled(false);
                }
            }
        });
    }
}
TextInputLayout输入框验证的更多相关文章
- easyui1.2.6  validate输入框验证在火狐下的一个bug
		easyui版本1.2.6,其他版本未测试是否有这个问题. 问题描述:FF浏览器中,当前输入框需要失去焦点验证,在编辑完成后不点击其他地方使输入框失去焦点,而直接点击保存按钮,此时只会进行输入框失去焦 ... 
- 小程序/js监听输入框验证金额
		refundAmoutInput: function(event){ var value = event.detail.value; if (value.split('.')[0].length &g ... 
- Input常用的输入框验证(正则)
		1.只是不能输入空格 <input type="text" οnkeyup="this.value=this.value.replace(/^ +| +$/g,'' ... 
- html 输入框验证
		JS判断只能是数字和小数点 1.文本框只能输入数字代码(小数点也不能输入)<input onkeyup="this.value=this.value.replace(/\D/g,'') ... 
- kendo grid输入框验证方法
		$("#grid").kendoGrid({ dataSource: dataSrc, //toolbar: ["save", "取消"], ... 
- angular 输入框实现自定义验证
		此插件使用angular.js.JQuery实现.(jQuery的引入需在angular 之前) 用户可以 在输入框输入数据后验证 必填项.整数型.浮点型验证. 如果在form 里面的输入框验证,可以 ... 
- input 标签实现带提示文字的输入框
		方法一:html5配合css3实现带提示文字的输入框(摆脱js): webkit特有的一个css,可以控制里面的文字样式,配合css3的动画效果和伪类,我们就可以很容易做出一个带动画的输入框,在系统登 ... 
- AngularJS 的表单验证
		最近开始学习angularjs,学到表单验证的时候发现有必要学习下大神的好文章: 转:http://www.oschina.net/translate/angularjs-form-validatio ... 
- JQuery数字类型验证正则表达式
		有朋友整了一些关于js与jquery的数字类型验证正则表达式代码,下面我给大家再整理一下. 这里包括了数字验证实现与测试实例了,大家可参考. js验证数字正则表达式 代码如下: //检测是否为数字和小 ... 
随机推荐
- [C++]动态内存分配问题
			动态分配内存: 1.malloc(int n)/free(&var): https://openhome.cc/Gossip/CGossip/MallocFree.html; 2.new/de ... 
- JavaScript之原生接口类设计
			//接口类 var Interface = function(name , methods){ if(arguments.length!=2){ ... 
- jquery 学习(七) - 常用动态效果
			<!--转载于 听说你的代码很6--><!--http://www.jq22.com/webqd2377--> CSS <style> #content #firs ... 
- Jetson tk1 安装OpenNI 1 +Xtion Pro +NiTE
			参考: http://blog.csdn.net/xiabodan/article/details/44496871 序: 由于第三方库 NiTE2.0 不支持 arm 架构的处理器,因此需要安装Op ... 
- WPF复制异常问题(OpenClipboard 失败 (异常来自 HRESULT:0x800401D0 (CLIPBRD_E_CANT_OPEN)))
			最近在维护WPF系统的时候发现的问题,刚刚开始自己的电脑都不能重现,后面写日志跟踪才发现问题的所在.问题主要是由于:1. 在程序访问剪切板的时候,有其他程序正在占用剪切板,导致自己的程序无法访问, ... 
- Django 聚合与查询集API实现侧边栏
			本文从Django官方文档总结而来,将聚合的主要用法和查询集的常见方法做一归纳. 聚合 1. 聚合的产生来源于django数据库查询,通常我们使用django查询来完成增删查改,但是有时候需要更复杂的 ... 
- ARMV8 datasheet学习笔记3:AArch64应用级体系结构之Memory Type and Attributes
			1.前言 2. Memory类型和属性 memory分为normal memory和device memory,两种类型的Memory有各自的属性,除了下面介绍的几种属性外,还有其他一些杂项属性 2. ... 
- html5学习第一天
			1.语义标签解决方案 <video></video> 属性: controls 显示控制栏 autoplay 自动播放 loop 设置循环播放 多媒体标签在网页中的兼容效果方 ... 
- Centos6.5使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践
			Centos6.5安装Logstash ELK stack 日志管理系统 概述: 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的 ... 
- POJ 3243 // HDU 2815(改下输出,加个判断)
			A^x = B (mod C) 的模板题,不够要用扩展BSGS (虽然AC,但完全理解不了模板0.0,以后学好数学在来慢慢理解555555) #include <iostream> #in ... 
