Android开发手册TextInputLayout样式使用示例


Posted in Java/Android onJune 10, 2022

前言

前面小空带同学们学了EditText控件,又用其实践做了个验证码功能,以为这就完了吗?

然而并没有。

Android在5.0以后引入了Materia Design库的设计,现在又有了Jetpack UI库的设计。帮助开发者更高效的实现炫酷的UI界面,降低开发门槛。

Jetpack我们后面再说,承接之前的EditText,先说说Materia Design里的TextInputLayout。

使用方式是将TextInputEditText或EditText套到TextInputLayout内,这样友情提示信息hit就可以带有动画(上浮为标题),计数/密码可见等属性设置。  

布局代码

<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="请输入用户名">
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="number" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="60dp"
    android:hint="请输入密码">
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textPassword" />
</com.google.android.material.textfield.TextInputLayout>

Android开发手册TextInputLayout样式使用示例

这样就简单的实现了一个效果。我们在继续深入添加些属性:

<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="请输入用户名"
    app:hintAnimationEnabled="false">
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="number" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="60dp"
    android:hint="请输入密码"
    app:counterEnabled="true"
    app:counterMaxLength="10"
    app:passwordToggleEnabled="true">
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textPassword" />
</com.google.android.material.textfield.TextInputLayout>

从运行结果可以看出,设置了字数限制后,自动在编辑框右下角显示最大字数和当前输入字数(随着输入情况实时变化),并且更改了颜色样式

?属性介绍

  • app:boxCollapsedPaddingTop 设置用于编辑文本在框模式下折叠的顶部填充的值 
  • app:boxStrokeErrorColor 在显示错误时设置轮廓框的描边颜色。 
  • app:boxStrokeWidth 设置描边的宽度 
  • app:boxStrokeWidthFocused 设置获取焦点框的描边宽度 
  • app:counterEnabled     是否显示计数器 
  • app:counterMaxLength 设置计数器的最大值,与counterEnabled同时使用 
  • app:counterTextAppearance       计数器的字体样式 
  • app:counterOverflowTextAppearance 输入字符大于我们限定个数字符时的字体样式 
  • app:errorEnabled  是否显示错误信息 
  • app:errorTextAppearance&nbsp;   错误信息的字体样式 
  • app:endIconCheckable 设置是否显示结束图标 
  • app:endIconContentDescription 为结束图标设置内容说明 
  • app:endIconDrawable 设置结束图标图像 
  • app:endIconMode 设置模式 
  • app:endIconTintMode 指定混合模式,用于将 指定的色调应用于可绘制的结束图标。 
  • app:helperText 设置帮助文本 
  • app:helperTextEnabled 设置是否激活帮助文本 
  • app:helperTextTextColor 设置帮助文本颜色 
  • app:hintAnimationEnabled  是否显示hint的动画,默认true 
  • app:hintEnabled    是否使用hint属性,默认true 
  • app:hintTextAppearance      设置hint的文字样式(指运行动画效果之后的样式) 
  • app:passwordToggleDrawable    设置密码开关Drawable图片,于passwordToggleEnabled同时使用 
  • app:passwordToggleEnabled      是否显示密码开关图片,需要EditText设置inputType 
  • app:passwordToggleTint     设置密码开关图片颜色 
  • app:passwordToggleTintMode    设置密码开关图片(混合颜色模式),与passwordToggleTint同时使用

以上就是Android开发手册TextInputLayout样式使用示例的详细内容,更多关于Android开发TextInputLayout样式的资料请关注三水点靠木其它相关文章!


Tags in this post...

Java/Android 相关文章推荐
浅谈自定义校验注解ConstraintValidator
Jun 30 Java/Android
Java基础之线程锁相关知识总结
Jun 30 Java/Android
Springboot配置suffix指定mvc视图的后缀方法
Jul 03 Java/Android
SpringBoot整合Mybatis Generator自动生成代码
Aug 23 Java/Android
利用Sharding-Jdbc进行分库分表的操作代码
Jan 22 Java/Android
Java9新特性对HTTP2协议支持与非阻塞HTTP API
Mar 16 Java/Android
Spring依赖注入多种类型数据的示例代码
Mar 31 Java/Android
SpringBoot整合minio快速入门教程(代码示例)
Apr 03 Java/Android
JavaWeb Servlet开发注册页面实例
Apr 11 Java/Android
Spring Boot配合PageHelper优化大表查询数据分页
Apr 20 Java/Android
SpringBoot Http远程调用的方法
Aug 14 Java/Android
Java结构型设计模式之组合模式详解
Sep 23 Java/Android
Java实现简单小画板
Android开发EditText禁止输入监听及InputFilter字符过滤
Jun 10 #Java/Android
详解Spring Bean的配置方式与实例化
Jun 10 #Java/Android
Spring JPA 增加字段执行异常问题及解决
Jun 10 #Java/Android
Android开发手册自定义Switch开关按钮控件
Jun 10 #Java/Android
java实现面板之间切换功能
Jun 10 #Java/Android
Spring Boot项目如何优雅实现Excel导入与导出功能
Jun 10 #Java/Android
You might like
PHP实现采集程序原理和简单示例代码
2007/03/18 PHP
微信支付开发教程(一)微信支付URL配置
2014/05/28 PHP
php检测文本的编码
2015/07/26 PHP
php获取汉字拼音首字母的方法
2015/10/21 PHP
分享10段PHP常用代码
2015/11/11 PHP
详解WordPress中简码格式标签编写的基本方法
2015/12/22 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
通过ifame指向的页面高度调整iframe的高度
2006/10/05 Javascript
JS效率个人经验谈(8-15更新),加入range技巧
2007/01/09 Javascript
javascript 学习笔记(八)javascript对象
2011/04/12 Javascript
JavaScript中判断原生函数检查function是否是原生代码
2014/09/09 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
2015/11/11 Javascript
基于Javascript实现弹出页面效果
2016/01/01 Javascript
D3.js实现散点图和气泡图的方法详解
2016/09/21 Javascript
详解vue.js之props传递参数
2017/12/12 Javascript
JS实现图片转换成base64的各种应用场景实例分析
2018/06/22 Javascript
基于Angularjs-router动态改变Title值的问题
2018/08/30 Javascript
layui动态绑定事件的方法
2019/09/20 Javascript
javascript自定义右键菜单插件
2019/12/16 Javascript
vue props 一次传多个值实例
2020/07/22 Javascript
vue项目如何监听localStorage或sessionStorage的变化
2021/01/04 Vue.js
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
python更新列表的方法
2015/07/28 Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
2015/11/20 Python
Python 绘图和可视化详细介绍
2017/02/11 Python
Python3 实现随机生成一组不重复数并按行写入文件
2018/04/09 Python
python读取Excel实例详解
2018/08/17 Python
python 实现视频流下载保存MP4的方法
2019/01/09 Python
Django models filter筛选条件详解
2020/03/16 Python
CSS3实现的炫酷菜单代码分享
2015/03/12 HTML / CSS
CSS3的Flexbox布局的简明入门指南
2016/04/08 HTML / CSS
应用艺术专业个人的自我评价
2014/01/03 职场文书
2016年中学清明节活动总结
2016/04/01 职场文书
关于保护环境的建议书
2019/06/24 职场文书
pandas中DataFrame检测重复值的实现
2021/05/26 Python
MySQL数据库⾼可⽤HA实现小结
2022/01/22 MySQL