首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

强大的提示控件TextInputLayout使用以及源码分析

TextInputLayout的使用 这里使用TextInputLayout简单写一个登录的界面 布局代码 android="http://schemas.android.com...,还有hintAppearance的值,mErrorTextAppearance是错误提示文字的样式,errorEnabled是否开启错误提示 setErrorEnabled(errorEnabled)...super.addView(child, index, params); } } 只有当child 是 EditText的时候,会调用自身的setEditText方法,然后调用父类LinearLayout...的addView方法,如果不是EditText,也调用父类的addView方法,查看setEditText方法 内部 private void setEditText(EditText editText...设置折叠的bounds去匹配EditText可编辑区域的高,接下来我们查看CollapsingTextHelper这个非常重要的类的代码 public CollapsingTextHelper(View

1.8K50

再不迁移到Material Design Components 就out啦

要恢复为旧的文本字段可以在布局中添加样式 android.material.textfield.TextInputLayout ... + style="@style...下面这几种情况应该考虑 在布局中写的控件如果有对应的 MDC 控件的话,直接使用 MDC 控件 任何的风格,默认风格和默认风格属性应该改变成 MDC 版本 在编程中或者自定义类的父级类使用的任何控件都应该为...,中,大 这些合适的样式属性来自 ShapeAppearance.* styles。...MDC小部件使用这些属性来设置其背景样式。要了解哪些窗口小部件适用于哪些形状类别,需要检查源代码中的默认窗口小部件样式。 控件背景 实现此功能的类为 MaterialShapeDrawable....android.material.card.MaterialCardView> 使用 `corner family` 和 `size` 来自定义 shape 我们可以选择在应用主题中覆盖形状样式来表达我们自己的品牌

3.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Material Design 进阶之二-使用TextInputLayout的登陆界面

    出现后得到了极大改善,我们可以做最少的事达到最好的效果 效果图 ---- 导入支持库 implementation 'com.android.support:appcompat-v7:28.0.0...可以看到并不是非常美观,下载我们引入 TextInputLayout 稍作改动 ---- 使用 TextInputLayout 我们终于到达了本教程中最有趣的部分。...[a-zA-Z0-9-]+)*$/ 所以我们就可以根据这个表达式建立一个类来实现完整的功能了 public class EmailManager { private static final...另一个有趣的事实是,如果尚未启用错误功能并且您调用setError传递非null参数,setErrorEnabled(true) 则会自动调用。...每个小部件的颜色都直接从style.xml文件中指定的主题颜色中绘制 。只需打开它并将colorAccent项目添加到活动主题即可更改表单的颜色方案。

    1.4K20

    Android材料设计Material Design 开篇前言

    ,如有需要,可自理(多选模式:类名.模式名) so:项目源码:Github----Android_Material_Design_Test你看着办吧 ---- 本系列文章一览: Android材料设计Material...+Palette Android材料设计之DrawerLayout+NavigationView+TextInputLayout Android材料设计之Behavior攻坚战 ---- 一、本篇是干嘛的...fab的属性.png ---- 4.Snackbar资料卡片: 国籍:非View 城市:BaseTransientBottomBar 爱好:show 一句话:虽然我不是View,但我体内燃烧着View的灵魂...fab_sna.gif ---- 5.bottom_sheet资料卡片: 国籍:非View 城市:Behavior族 爱好:暗杀、潜藏、show 一句话:哥是迷一样的存在----Behavior族 额外依赖...常用颜色.png 2.测试Text样式抽取 <!

    86110

    Android MVVM框架搭建(一)ViewModel + LiveData + DataBinding

    Control (控制层)控制器由View 根据用户行为触发并响应来自view 的用户交互,然后根据view 的事件逻辑来修改对应的Model, Control 并不关心 View 如何展示 相关数据或状态...不过也有缺点,额外增加了大量的接口、类,不方便进行管理,所以关于MVP的话就还有一个Contract要去处理。...Contract 如其名,是一个契约,将Model、View、Presenter 进行约束管理,方便后期类的查找、维护。 presenter - 逻辑处理层对UI的各种业务事件进行相应处理。...本文的主要目标是ViewModel 和 DataBinding。   从Google的官方说明来看,ViewModel 类旨在以注重生命周期的方式存储和管理界面相关的数据。...类,表示与MainActivity进行绑定。

    17K97

    Android MVVM框架搭建(一)ViewModel + LiveData + DataBinding

    Control (控制层)控制器由View 根据用户行为触发并响应来自view 的用户交互,然后根据view 的事件逻辑来修改对应的Model, Control 并不关心 View 如何展示 相关数据或状态...不过也有缺点,额外增加了大量的接口、类,不方便进行管理,所以关于MVP的话就还有一个Contract要去处理。...Contract 如其名,是一个契约,将Model、View、Presenter 进行约束管理,方便后期类的查找、维护。 presenter - 逻辑处理层对UI的各种业务事件进行相应处理。...本文的主要目标是ViewModel 和 DataBinding。   从Google的官方说明来看,ViewModel 类旨在以注重生命周期的方式存储和管理界面相关的数据。...类,表示与MainActivity进行绑定。

    2.7K32

    TextInputLayout的使用与实现

    TextInputLayout的使用 在Gradle的依赖中添加上com.android.support:design:23.0.0,其中23版本根据编译的android版本来调整对应版本即可 ?...Layout配置文件 TextInputLayout效果 在两个输入框切换点击切换的时候,EditText中的文本会有动画的方式飞向左上角。 ?...TextInputLayout效果 TextInputLayout动画实现原理 原本以为在点击输入框的时候,会是在EditText的Focus改变的时候,开始执行动画,结果发现是在整个TextInputLayout...animateToExpansionFraction CollapsingTextHelper在这个类中,保存了当前Animation执行的到的状态,比如说当前绘制的hint文案的位置(x,y),画笔的位置和颜色...TextInputLayout.onLayout 在TextInputLayout中的draw中,会根据onLayout中计算出的CollapsingTextHelper矩形位置以及缩放大小开始绘制文字

    1.2K40

    这些Android系统样式中的颜色属性你知道吗?

    Android 系统样式中的颜色属性 推荐阅读看完后彻底搞清楚Android中的 Attr 、 Style 、Theme 几个常用的颜色属性 先放上一张经典的图片,图片来自网络。 ?...状态 EditText:获取焦点的时候的下划线和光标颜色 TextInputLayout:悬浮 label 字体颜色 等等 android:navigationBarColor navigation...editTextColor: 默认 EditView 输入框字体颜色 TextColor TextView 的文字颜色 更多查看这里 样式介绍 从 Android 5.0 开始,Android 系统引入了...这里使用了一个 Titlbar 这样效果和整体很不搭配,我们需要的是 Titlbar 的背景使用我们的 colorPrimary 字体的颜色使用 浅色文本样式 的颜色,那么这样我们就可以自己定义一个样式...当然你自己完全可以用属性来自己完成。 ? 这是 ThemOverlay 样式的全部样式了,每个样式里面的内容都很简单。就是修改一些最基本的属性,不像 Theme 一样里面有那么多的内容。

    1.9K10

    Android MVVM框架搭建(六)腾讯X5WebView + DrawerLayout + NavigationView

    ③ WebRepository   数据有了,API接口有了,下面就是去调用的地方了,在repository包下新增一个WebRepository类,里面的代码如下: @SuppressLint("CheckResult...四、传递新闻参数   在点击新闻列表中的某一项的时候传递参数到WebActivity中,在NewsAdapter类中添加如下代码: public static class ClickBinding {...因此不需要放入数据表中,所以我用@Ignore注解了,下面创建相关的Dao类。...}" /> android.material.textfield.TextInputLayout> android.material.textfield.TextInputLayout...,这里要注意,之前用的是model包下的User类,现在用的是bean包下的User类,有本质的区别,修改LoginViewModel的代码如下所示: public class LoginViewModel

    2.2K20

    React Native之常用第三方库

    前言 React Native出来一年多了,受到各大开发人员的喜爱,但是由于只是专注于View层的开发,因此在很多深层次上还需要结合原生app做一定的兼容,还有就是现在好多控件,如Android中已是系统的控件的...={()=>this.onClick(data)} isChecked={data.checked} leftText={leftText} />; 当然我们也可以自定义样式,主要是对选中和未选中的样式做修改...selectedValue 这个属性是选择的值 enabled 设置是否可点击 Android属性 mode 设置样式 Android属性 dropdown下拉样式和dialog弹窗样式 默认是dialog...prompt 设置Picker标题 Android属性 并且只有是mode为dialog才会显示 itemStyle 设置每一项的样式 iOS属性 用法: /** * Created by Administrator...https://github.com/halilb/react-native-textinput-effects https://github.com/zbtang/React-Native-TextInputLayout

    8.9K101

    实现一个带浮动标签的输入框

    现在带浮动标签的输入框也是一个很常见的东西了,在材料设计里面有一个 TextInputLayout 的控件,我们可以用它实现这个效果。但是材料设计控件的样式比较固定,并不能满足我们产品设计的脑洞。...这里提供一个用属性动画实现的方法。 还是先看看效果吧: image.png 大概的思路是这样的: 控件有两层,一层是浮动的标签,一层是输入框。...缩放动画是根据控件的基准坐标来进行缩放的。也就是说,当我们把基准坐标设在控件上方时,缩放的时候也会有一个移动的效果。...所以在布局里面用 android:transformPivotX="0dp" android:transformPivotY="-30dp" 复制代码 将标签的基准点设为 (0dp, -30dp),这样我们就省去了移动动画...虽然实现一个这样的控件不难,但我个人还是希望可以使用原生控件的,希望移动端的设计能多去了解一下材料设计吧。(T_T)

    1.3K10

    Material Design Compoents 1.1.0

    MDC 1.1.0 在您的 Android 应用中启用 Material Theming 。...所有组件都支持通过主题、样式、新属性和自定义类(比如:MaterialShapeDrawable) 来调整其颜色、字体和形状。...并且已经存在的组件也是通过最新的设计有了新的 style 如果您使用的是Design库或者 MDC 1.0.0 那么组件将自动采用这些新样式。...Android 10 手势支持 手势导航是在 Android10 中引入的。某些 MDC 组件常常处于主手势的区域(比如,BottomNavigationView 以及从底部向上滑动的原始手势)。...这主要包含更好的 "话语提示" 在有用的内容描述、功能和各部分的排序。例如,TextInputLayout现在按正确的顺序读取其提示,输入以及帮助程序或错误文本。

    1.1K10
    领券