Android学习之Design Support Library中TextInputLayout的使用
今天学习了一个Android Design Support Library 中的TextInputLayout控件,感觉还不错,较之以往的Editetxt,多了几分灵活性,使用也非常easy,故此给大家推荐一下。并记录用法。
首先上图来介绍一下它跟我们以往使用的有什么改变。
这里简单看一下,它多了一个提示功能。一般当EditText输入内容后,hint会消失。
TextInputLayout会在输入内容后。提示就会浮动在EditText上方。
当然也支持错误提示。
以下来看实现方式
加入依赖
//noinspection GradleCompatible
compile 'com.android.support:design:24.0.0-alpha1'
该怎样实现呢?TextInputLayout作为父布局包括EditText即可了
<android.support.design.widget.TextInputLayout
android:id="@+id/textInputLayouts"
android:layout_width="match_parent"
android:layout_margin="8dp"
android:layout_height="wrap_content">
<EditText
android:id="@+id/etPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/space_16"
android:hint="请输入password"
android:inputType="textPassword"
android:padding="@dimen/space_16"
android:textColor="@color/grey_800"
android:textSize="@dimen/text_size_14" />
</android.support.design.widget.TextInputLayout>
实现方式非常easy哈。然后该怎样在代码里设置呢?
TextInputLayout主要包括以下几个方法:
1.setHint()。设置提示信息
2.setError(),设置错误提示信息
3.setErrorEnabled(boolean enabled),设置error是否显示
4.getEditText(),获取自布局EditText
5.setCounterMaxLength(int) 设置可输入最大字符数。并在以下进行统计
6.setCounterEnabled(boolean ); 设置是否统计输入字符数
7.setHintAnimationEnabled(boolean) 设置hint动画是否开启。

效果如上。
tlName = (TextInputLayout) findViewById(R.id.textInputLayout);
tlPwd = (TextInputLayout) findViewById(R.id.textInputLayouts);
tlName.setHint("请输入username");
tlPwd.setHint("请输入password");
String userName = etUserName.getText().toString().trim();
String password = etPassword.getText().toString();
if (TextUtils.isEmpty(userName)) {
tlName.setError("username不能为空");
} else {
tlName.setErrorEnabled(false);
}
if (TextUtils.isEmpty(password)) {
tlPwd.setError("password不能为空");
} else {
tlPwd.setErrorEnabled(false);
}
逻辑嘛。也就是我们寻常写的登陆注冊逻辑。关键点在于加入了setError()。setErrorEnabled()方法。
好啦,就这么多。有个问题在设置setCounterMaxLengt()后。输入超过设置字符数后,会数组越界,不知道哪位大兄弟能够教我,谢谢!
代码下载
Android学习之Design Support Library中TextInputLayout的使用的更多相关文章
- Android Design Support Library: 学习CoordinatorLayout
简述 CoordinatorLayout字面意思是"协调器布局",它是Design Support Library中提供的一个超级帧布局,帮助我们实现Material Design ...
- Android Design Support Library使用详解——TextInputLayout与TextInputEditText
TextInputLayout 在谷歌的Material Design中,文本输入是这样表现的:当用户点击输入框想要输入文字时,如果输入框是空的,那么它的提示文字(hint)就会变小并且同时移动到输入 ...
- Android Design Support Library(2)- TextInputLayout的使用
原创文章,转载请注明 http://blog.csdn.net/leejizhou/article/details/50494634 这篇文章介绍下Android Design Support Lib ...
- 【转】【翻】Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏
转自:http://mrfufufu.github.io/android/2015/07/01/Codelab_Android_Design_Support_Library.html [翻]Andro ...
- Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏
原文:Codelab for Android Design Support Library used in I/O Rewind Bangkok session--Make your app fanc ...
- Android Design Support Library——Navigation View
前沿 Android 从5.0开始引入了Material design元素的设计,这种新的设计语言让整个安卓的用户体验焕然一新,google在Android Design Support Librar ...
- Android Design Support Library使用详解——Snackbar
Google在2015 I/O大会上,给我们带来了更加详细的Material Design规范,同时也引入了Android Design Support Library,为我们提供了基于Materia ...
- Android Design Support Library(三)用CoordinatorLayout实现Toolbar隐藏和折叠
此文的代码在Android Design Support Library(一)用TabLayout实现类似网易选项卡动态滑动效果代码的基础上进行修改,如果你没有看过本系列的第一篇文章最好先看一看.Co ...
- Android Design Support Library(二)用NavigationView实现抽屉菜单界面
NavigationView在MD设计中非常重要,之前Google也提出了使用DrawerLayout来实现导航抽屉.这次,在Android Design Support Library中,Googl ...
随机推荐
- Axure 验证码、进度条、分页条(翻页)、搜索框、选项卡
百度网盘:http://pan.baidu.com/s/1jHP4qsm
- Java 三大主流 工作流 学习
之前听同学说,他们在用工作流,好奇,搜索了一下,查看和搜集了一番,摘抄入下:(来源于:gzRiven) 三大主流工作流引擎:Shark,osworkflow,jbpm! Shark的靠山是Enhydr ...
- linux获取精准进程PID之pgrep命令
pgrep 是通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行.在服务器的配置和管理中,这个工具常被应用,简单明了. 用法: #pgrep [选项] [程序名] pgrep [-flvx ...
- 【RS】BPR:Bayesian Personalized Ranking from Implicit Feedback - BPR:利用隐反馈的贝叶斯个性化排序
[论文标题]BPR:Bayesian Personalized Ranking from Implicit Feedback (2012,Published by ACM Press) [论文作者]S ...
- Zabbix触发器支持的函数说明
原文出处:https://www.zabbix.com/documentation/2.0/manual/appendix/triggers/functions 译者: pengyao abschan ...
- [企业化NET]Window Server 2008 R2[3]-SVN 服务端 和 客户端 基本使用
1. 服务器基本安装即问题解决记录 √ 2. SVN环境搭建和客户端使用 2.1 服务端 和 客户端 安装 √ 2.2 项目建立与基本使用 √ 2.3 基本冲突解决, ...
- chrome表单自动填充导致input文本框背景变成偏黄色问题解决
chrome表单自动填充后,input文本框的背景会变成偏黄色的,想必大家都会碰到这种情况吧, 这是由于chrome会默认给自动填充的input表单加上input:-webkit-autofill私有 ...
- Linux伙伴算法
Linux内存管理伙伴算法 伙伴算法 Linux内核内存管理的任务包括: 遵从CPU的MMU(Memory Management Unit)机制 合理.有效.快速地管理内存 实现内存保护机制 实现虚拟 ...
- 使用swift和rails来实现ios账号系统
前不久看到这样一篇教程User Accounts on iOS with Ruby on Rails and Swift,里面描述了如何使用swift和rails来前后台配合来实现一个简单的类似twi ...
- 在C语言中除法运算为什么没有小数部分?
原文链接: http://wenda.tianya.cn/question/4e096f010317a93d 除法运算符" / ",如果是两个整数相除结果为整数如果需要保留小数时 ...