其中一个重要的特性就是AppCompat theme没有提供一个显示在EditText上方的浮动标签。 比如下图所示: ?...就如你知道的,这个属性允许你在EditText的内容为空的时候显示一个自定义的提示。一旦用户开始输入,hint会消失。这并不理想,因为用户丢失了他们输入信息的上下文提示。...一个单一的EditText 在输入文字的时候会隐藏hint,而被包含在TextInputLayout中的EditText则会让hint变成一个在EditText上方的浮动标签。...控件的颜色。...每一个控件的颜色都是直接通过主题颜色绘制的,在 style.xml 中指定。打开它添加colorAccent 到主题以改变表单的颜色。
本篇博客带来一个具有强大提示的Material Design风格的控件TextInputLayout,使用这个控件可以非常方便的做出用户登录界面帐号密码输入框的效果,文章将会从以下TextInputLayout...,以下几个属性和方法需要声明一下: app:hintAnimationEnabled="true"可以开启动画,这个为true时,获得焦点的时候hint提示问题会动画地移动上去。...app:errorEnabled="true"时,开启错误提示 textInputLayout.setCounterEnabled(true);用于 开启计数 textInputLayout.setCounterMaxLength...之中,还记得前面我们提过TextInputLayout之中肯定应该会有一个添加错误提示信息的方法,在这里我们找到了,同时这里的代码也是值得我们进行学习的,只有当用户设置错误提示为真的时候,才会new一个...= mExpandedTextColor,给mTextPaint设置颜色,而这个颜色会通过blendColors方法将mCollapsedTextColor与mExpandedTextColor进行混合
github地址:https://github.com/shuaijia/MaterialDesignProject 添加依赖 TextInputLayout是在Material Design中的,如果我们要使用的话...,必须在gradle文件中配置 开始使用 TextInputLayout是一种新的继承自LinearLayout的布局,使用时其只能包含一个EditText或其子类控件(如AutoCompleteTextView...) 还可通过设置hint和error来显示浮动标签 注意:一个TextInputLayout中 有且只有 一个EditText!...举例 浮动标签 字数统计 错误提示 密码框右侧图标 虚拟键盘监听 有时候我们在用虚拟键盘的时候,在输入账号之后,我们点击下一项,焦点会跑到输入密码这一栏,当我们密码输入完成之后,点击确定按钮就能登录了...账号EditText中 密码EditText中 AutoCompleteTextView –自动提示输入框 继承自EditText,拥有EditText的所有属性,可以设置在输入时自动在输入框下方提示信息
今天这篇文章应该算是Material Design系列的补充篇,因为这篇文章本来应该放到前面讲的,因为讲的是主题嘛,对于一些状态和颜色的介绍,因为我们一新建一个项目时,系统自带了三个属性的颜色,现在就重点介绍这三个颜色属性的意义和作用...里面可以包含一个且只能有一个EditText,与传统的EditText不同,在输入时EditText的hint提示文字会滑到上方,在用户输入的同时提示用户当前要输入的是什么,同时还可以设置输入错误的提示信息...TextInputLayout常用的方法有如下: setHint():设置提示语。 getEditText():得到TextInputLayout中的EditView控件。...特别注意:TextInputLayout不能单独使用,必须包裹EditView组件,且只能一个,设置错误提示信息时一定要先setErrorEnabled(true);再设置setError()。...,可以在右侧显示出错误信息的小弹窗提示。
背景颜色是漂亮,平坦,浅灰色。 可以看到并不是非常美观,下载我们引入 TextInputLayout 稍作改动 ---- 使用 TextInputLayout 我们终于到达了本教程中最有趣的部分。...一个 TextInputLayout 小部件的行为与LinearLayout它完全一样,它只是一个包装器。TextInputLayout只接受一个子元素,类似于a ScrollView。...它还将整个EditText小部件的颜色更改为红色。 setErrorEnabled 启用错误功能。这直接影响布局的大小,增加较低的填充以为错误标签腾出空间。...在设置错误消息之前启用此功能setError 意味着在显示错误时此布局不会更改大小。您应该结合这两种方法进行一些测试,以便您实际看到 我在说什么。...每个小部件的颜色都直接从style.xml文件中指定的主题颜色中绘制 。只需打开它并将colorAccent项目添加到活动主题即可更改表单的颜色方案。
TextInputLayout 基础样式、错误提示、字数限制等等 效果图: 【2020-12-13】Theme切换到MaterialComponents之后,是有一些变化的,比如默认背景、默认padding...app:hintTextAppearance="@style/MyHintText" TextInputEditText: android:theme="@style/MyEditText" 2、错误提示样式及代码设置...在上面的“错误提示”中,有一段判断是这样的 if (mTilName.getEditText().getText().length() > mTilName.getCounterMaxLength())...mTilName是TextInputLayout,getEditText()方法可以获取子控件TextInputEditText。...="true" app:passwordToggleTint="@color/colorPrimary" app:passwordToggleTint是换图标的颜色 换图标是app:passwordToggleDrawable
我们来分析一下效果图中都用到了什么,只看带颜色的有文字,和一个苹果背景图、还有一个悬浮按钮(吸附在CollapsingToolbarLayout的右下角)。...和背景图片,这就理所应当的把这两个空间写在CollapsingToolbarLayout中,因为上面协调者布局和appbar布局很简单,这里就不在写了,只贴出折叠布局代码(里面的注释有贴出后加的,用该代码时要注意语法...toast就关掉了,而且具体哪一行错误也没有标红,这就很尴尬了,那么今天这个控件也是一个输入框,但是外层加一个布局(TextInputLayout),就可以达到精确到一行提示具体错误。...这时候TextInputLayout则是显示错误,TextInputLayout是LinearLayout的子类,用于辅助显示提示信息。...现在仅仅是过度效果,还没有加提示信息,用法很简单,但注意一点TextInputLayout只能包含一个TextInputEditText,如果写用户名和密码那就写两个TextInputLayout,哦,
但是,升级后,您可能会注意到某些控件颜色和其他属性的某些意外更改。 ? 在上面的示例中,按钮发生了变化、文本和图标的颜色发生了变化。FAB 现在变成了蓝绿色,并且文本字段看起来完全不同。不用担心。.../Widget.Design.TextInputLayout"> ...... +TextInputLayout” parent=”Widget.Design.TextInputLayout”> +...TextInputEditText Widget.Design.TextInputLayout Widget.MaterialComponents.TextInputLayout.* textInputStyle...,我们还应该使用新的“ on”颜色属性 <!
众所周知,EditText未输入字符时,我们可以给它显示默认的提示文字hint;可是一旦输入字符,这个hint提示就消失了,虽然没有提示也没有什么大碍,但有总比没有好呀。...TextInputLayout便是用来解决提示文字的显示问题,它默认把提示文字显示在编辑框的上方,这样在编辑框内输入文字,就不影响上方的提示文字了。...如果不用TextInputLayout,只使用EditText的话,横屏时的编辑框也会显示提示文字;可是一旦加了TextInputLayout,再看横屏的编辑框,发现编辑框内的提示文字不见了,这是因为TextInputLayout...最终的页面效果,便是横屏时能够在编辑框内显示提示文字了,具体页面截图如下所示: ?...所以呢,TextInputEditText与EditText的唯一区别就是,横屏时输入文字,是否会在编辑框内显示提示文字。
在添加功能的同时要考虑页面的合理和UI美化,不能说怎么简单怎么来,对自己要有要求,首先看看之前的扫描页面 首先页面上很空旷,那么我们增加功能可以使用隐藏的方式,例如加一个菜单,右上角加三个点,同时我们把底部浮动按钮的文字改一下...首先在colors.xml中增加一个颜色,是分割线的颜色 #EEEcolor> 然后通过drawable绘制一个顶部左右圆角的背景,在drawable下新建一个shape_white_top_radius...那么这个缓存值的设置就在弹窗中的swich的操作时改变。...代码如下图所示: 这里当拖动Seekbar时,改变TextView显示的内容,当拖动结束时保存进度值到缓存中,然后处理弹窗这个窗时的页面显示状态,我这里通过getInt(RSSI,100)去获取本地的缓存...,开发时要注意的细节很多。
主要功能是错误反馈,代码业务逻辑实现错误提示,设置密码字段类型为“textPassword”: TextInputLayout...3.3 输入验证与用户体验 难点:实现用户输入验证时,需要保证错误提示的实时性和准确性。需要多考虑边缘情况,比如密码为空、快速输入时的延迟反应。...解决方法:通过 setOnKeyListener 实时监听用户输入,结合 MDC 的错误提示功能 (errorEnabled) 动态更新错误状态。...3.4 混合语言开发(Java、Kotlin) 难点:在项目中使用 Kotlin 和 Java 混合开发时,经常会遇到很多语言互操作性的问题,如 Kotlin 的空安全和Java传统空指针处理的冲突。...四、学习笔记 在开发过程中,积累了MDC框架技术的学习心得: 4.1.Material Components (MDC) 深入学习了MDC组件如TextInputLayout、MaterialButton
Google从动画、颜色、样式、触控反馈、布局等多个方面给出了Material Design的设计要求。...的错误提示、字数统计功能,基本的使用都比较简单。...在TextInputLayout可以轻松地通过getEditText方法找到它所包裹的EditText。、 在显示错误的时候,需要先设置错误的提示,每次显示的时候都要设置。...TextInputLayout详细使用请参见强大的提示控件TextInputLayout使用以及源码分析 Toolbar <android.support.v7.widget.Toolbar android...可以修改背景颜色和水波纹的颜色,并且最好使用AppcompatActivity: @color/colorPrimary_pink
现在带浮动标签的输入框也是一个很常见的东西了,在材料设计里面有一个 TextInputLayout 的控件,我们可以用它实现这个效果。但是材料设计控件的样式比较固定,并不能满足我们产品设计的脑洞。...还是先看看效果吧: image.png 大概的思路是这样的: 控件有两层,一层是浮动的标签,一层是输入框。...当输入框失去焦点时,判断是否有内容,如果没有则让标签执行一个复原的动画。 下面看看控件的布局: 时,缩放的时候也会有一个移动的效果。...TextUtils.isEmpty(etContent.getText())) { animationDown(); } } }); 复制代码 这样就已经完成了一个带浮动标签的输入框
初始化GalleryFinal配置 通过代码设置图片选择器的标题栏背景颜色,标题文本颜色,浮动按钮颜色; 通过监听事件,达到滚动时不加载图片,停下来时加载图片,实现优化; 初始化功能配置; 为防止代码分开查看导致逻辑的混乱...) // 设置浮动按钮常规颜色 .setFabPressedColor(colorFabPressed) // 设置浮动按钮点击颜色 .setCheckSelectedColor...初步效果图 修改源码 通过运行调试,发现框架中有些功能与需求不一致,因此我产生了修改源码的想法,总结需要更改的原功能点如下: 选择完达到上限数量的图片后,无法重新回到图片选择页面 ?...选择图片数量达到上限时无法进入图片选择页面 无图片选择时,无法点击浮动按钮进行返回 ?...返回打开本地图片选择器失败的提示信息。
ViewModel 类让数据可在发生屏幕旋转等配置更改后继续留存。DataBinding数据绑定库是一种支持库,借助该库,您可以使用声明性格式(而非程序化地)将布局中的界面组件绑定到应用中的数据源。...中的是泛型,你可以直接将一个对象放进去,当对象的内容有改动时,通知改变就可以了,现在这么写是为了方便理解。...最常用的就是当我Model中的数据改变时,改变页面上的值。这个是单向绑定。...还有一点就是当你使用了DataBinding之后就不需要去手动findViewById了,通过编译时技术会生成驼峰命名的对象,如上图的btnLogin、etAccount、etPwd。...上图的代码就是通过更改数据然后通知到xml做更改,初始化的修改时admin、123456。然后再通过输入框去修改。
空灵的输入护法:TextInputLayout抛弃原先只要打字就会无迹可寻的输入提示(Hint)。...只需要用这个标签套住原始EditText,在你按下琴键的第一字母时,它的提示文案就像是一个轻柔飘逸的浮魂被挤出升华在组件边缘(Floatinglabels),永久指示输入维度;它更能无缝兼顾报错态展示接口...它不仅能挂靠在底盘浮动,提供时效内消除及清爽的单行反馈,更是可以植入交互性回传响应体绑定!模块化滑片:TabLayout终于将Tab与关联展示的联动权下放至了这个大管家身上。...联动一:躲避裁决最直观的震撼源自你把FAB及Snackbar同时喂给协调中心后,当吐司从地核深处升腾时,按键竟然如受惊般长出脚自己滑了上去避让空间!这一切在3.0之上都不再需动用任何人工代码位移校准。
文章目录 一、搜索栏表单测量 1、左侧边界 2、文本输入框表单尺寸 3、文本输入框表单提示文本测量 二、搜索栏表单代码编写 1、HTML 标签结构 2、CSS 样式 3、输入表单效果 一、搜索栏表单测量..., 为 #00a4ff ; 3、文本输入框表单提示文本测量 使用 横排文字工具 , 点击表单中的 提示 文本 , 该文本大小 14 像素 , 颜色值 #bfbfbf ; 提示文本在 Input...表单中的 value 属性中设置 ; 提示文本左侧 距离边框 有 20 像素 , 这里可以设置 20 像素的内边距 ; 注意 : 设置内边距会拉长盒子 , 盒子的尺寸要减去内边距 ; 二、搜索栏表单代码编写...*/ color: #050505; /* 取消链接下方的横线 */ text-decoration: none; /* 调试时使用的背景 */ background: skyblue; }.../* 鼠标经过链接时的样式 */ .nav ul li a:hover { /* 鼠标经过导航栏链接 , 底部显示 2 像素的 #00a4ff 颜色实线 */ border-bottom: 2px
新的差异查看器可以更轻松地识别 AI 操作对代码所做的更改。完全支持 Java 21 功能图片IntelliJ IDEA 2023.3 提供对最新 Java 21 功能的全面支持。...默认情况下用颜色编码的编辑器选项卡图片为了增强您在编辑器中同时处理各种文件类型时的导航体验,我们为编辑器选项卡引入了默认颜色编码,反映了它们在项目工具窗口中的外观。...外观与行为 | 文件颜色。...例如,IDE 现在可以识别可能的字符串长度或估计字符串串联结果,从而在检测到冗余或可能有问题的代码时提示进行检查。...此更改简化了请求执行过程,无需手动检索令牌。OpenAPI规范的可视化编辑图片我们实现了可视化编辑功能,帮助您使用实时模板快速编写格式良好的 OpenAPI 规范。