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

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

如果我们想写一个登陆界面是不是一般都写两组TextView,EditText及一个Button,不过体验并不是太好,等等这些麻烦的的处理在Material Design TextInputLayout...它显示了一个欢迎标签(如果有的话,可以很容易地用徽标替换)和两个EditText元素,一个用于用户名,另一个用于密码。布局还包括一个触发登录序列的按钮。背景颜色是漂亮,平坦,浅灰色。...一个  TextInputLayout 小部件的行为与LinearLayout它完全一样,它只是一个包装器。TextInputLayout只接受一个子元素,类似于a  ScrollView。...---- 显示错误 TextInputLayout 错误处理简单快捷。所需的方法是  setErrorEnabled和setError。...在设置错误消息之前启用此功能setError 意味着在显示错误时此布局不会更改大小。您应该结合这两种方法进行一些测试,以便您实际看到 我在说什么。

1.4K20

TextInputLayout-Android M新控件

其中一个重要的特性就是AppCompat theme没有提供一个显示在EditText上方的浮动标签。 比如下图所示: ?...它显示了一个“登录”文字与两个EditText元素,一个是为用户名准备的,一个是为密码准备的。布局中还包含了一个触发登陆流程的按钮。背景颜色是扁平风格的灰色。...跟ScrollView一样,TextInputLayout只接受一个子元素。子元素需要是一个EditText元素。...setError设置一个红色的错误消息,显示在EditText的下面。如果传入的参数为null,错误消息将清空。并且它会改变整个EditText控件为红色。...在setError设置错误消息之前开启这个功能意味着在显示错误的时候布局不会变化。你可以把这两个方法结合起来验证下我所说的。

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

    Android Design Support Library初探-更新中

    button (悬浮操作按钮) snackbar tabs(选项卡) a motion and scroll framework to tie them together(将这些控件结合在一起的手势滚动框架...:icon="@drawable/ic_android" android:title="@string/navigation_item_2"/> group> 被点击过的item会高亮显示在抽屉菜单中...通常EditText会在用户输入第一个字母后隐藏提示信息,但是现在可以使用TextInputLayout来将EditText封装起来,提示信息(hint)会变成一个显示在EditText之上的floating...TextInputLayout: Layout which wraps an EditText (or descendant) to show a floating label when the hint...com.android.support:design:23.1.1' ---- 悬浮操作按钮 Floating Action Button Snackbar 选项卡 CoordinatorLayout, 手势, 以及滚动

    97420

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

    最后是我们当前最流行的框架MVVM,Model + View + ViewModel。解耦更彻底,如果说之前是藕断丝连的话,现在就是一刀两断。...去保存输入框的值就不同了,虽然你的Activity在切换屏幕的时候销毁并且重新创建了,但是我的MainModel依然稳定,所以我才能在横屏的时候也登陆,这样不会造成数据丢失。...举个例子:比如我手机上收到一个通知,我需要显示通知的文字内容在页面上,这就是单向绑定,而我页面上的文字内容改变也重新发一个通知出去,这就是双向绑定。可以理解为A和B进行交互。A发消息,B要做出反应。...然后我们的数据是需要显示在页面上的,而之前是通过Activity获取xml中的控件,然后显示数据在控件上,而现在有了DataBinding,可以直接和xml的中数据进行绑定,这看起来和JS比较像。...当然这样还没有完成,最后一步是在MainActivity中去进行绑定的。 进入MainActivity。在onCreate方法中,先将其他的代码注释掉。

    2.7K32

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

    最后是我们当前最流行的框架MVVM,Model + View + ViewModel。解耦更彻底,如果说之前是藕断丝连的话,现在就是一刀两断。...去保存输入框的值就不同了,虽然你的Activity在切换屏幕的时候销毁并且重新创建了,但是我的MainModel依然稳定,所以我才能在横屏的时候也登陆,这样不会造成数据丢失。...举个例子:比如我手机上收到一个通知,我需要显示通知的文字内容在页面上,这就是单向绑定,而我页面上的文字内容改变也重新发一个通知出去,这就是双向绑定。可以理解为A和B进行交互。A发消息,B要做出反应。...然后我们的数据是需要显示在页面上的,而之前是通过Activity获取xml中的控件,然后显示数据在控件上,而现在有了DataBinding,可以直接和xml的中数据进行绑定,这看起来和JS比较像。...当然这样还没有完成,最后一步是在MainActivity中去进行绑定的。 进入MainActivity。在onCreate方法中,先将其他的代码注释掉。

    17.1K97

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

    本篇博客带来一个具有强大提示的Material Design风格的控件TextInputLayout,使用这个控件可以非常方便的做出用户登录界面帐号密码输入框的效果,文章将会从以下TextInputLayout...TextInputLayout的使用 这里使用TextInputLayout简单写一个登录的界面 布局代码 textInputLayout包裹的EditText设置内容变化监听,我们可以自己重写一个监听实现里面的方法进行相关逻辑的处理 效果如下: TextInputLayout源码分析 TextInputLayout...继承自LinearLayout,说明它是一个ViewGroup public class TextInputLayout extendsLinearLayout 先从构造函数开始看起 public TextInputLayout...break; } 取出expandedAbsGravity的值然后和各种Gravity进行比较,然后确定mCollapsedDrawY 和mCollapsedDrawX的值,最后调用

    1.8K50

    Android之MaterialDesign应用技术2-仿支付宝上滑搜索框缓慢消失

    这里可以看出我在ImageView中加入了高度180dp,这里是一定要加上的,否侧toolbar的会出现以下几种错误,1:文字不显示。2:只显示标题栏。3:图片过大充满整个屏幕。...toast就关掉了,而且具体哪一行错误也没有标红,这就很尴尬了,那么今天这个控件也是一个输入框,但是外层加一个布局(TextInputLayout),就可以达到精确到一行提示具体错误。...TextInputLayout是22.2.0新添加的控件, 要和EditText(或EditText的子类)结合使用,并且只能包含一个EditText(或EditText的子类)。...这时候TextInputLayout则是显示错误,TextInputLayout是LinearLayout的子类,用于辅助显示提示信息。...现在仅仅是过度效果,还没有加提示信息,用法很简单,但注意一点TextInputLayout只能包含一个TextInputEditText,如果写用户名和密码那就写两个TextInputLayout,哦,

    1.6K100

    TextInputLayout的使用与实现

    gradle配置文件 在对应的Layout文件中使用TextInputLayout将EditText控件包裹,并且在EditText中设置hint属性即可,在这个父ViewGroup中,只能有一个EditText...Layout配置文件 TextInputLayout效果 在两个输入框切换点击切换的时候,EditText中的文本会有动画的方式飞向左上角。 ?...TextInputLayout效果 TextInputLayout动画实现原理 原本以为在点击输入框的时候,会是在EditText的Focus改变的时候,开始执行动画,结果发现是在整个TextInputLayout...而在setExpansionFraction中,会根据当前的值和目标值计算出来要绘制的位置,以及颜色等,最后用ViewCompat的postInvalidateOnAnimation重绘View ?...TextInputLayout.onLayout 在TextInputLayout中的draw中,会根据onLayout中计算出的CollapsingTextHelper矩形位置以及缩放大小开始绘制文字

    1.2K40

    android:imeOptions属性详解以及无效处理

    比如,在一个搜索中,我们输入要搜索的文本,然后按Enter表示要去搜索了,但是默认的Enter键显示的是“完成”文本,看着不太合适,不符合搜索的语义,如果能显示“搜索”两个字或者显示一个表示搜索的图标多好...actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH效果:  (5)actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND效果: (6)actionNext...下一个,对应常量EditorInfo.IME_ACTION_NEXT效果: (7)actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE效果: android:...imeOptions="flagNoExtractUi" //使软键盘不全屏显示,只占用一部分屏幕 同时, 这个属性还能控件软键盘右下角按键的显示内容,默认情况下为回车键  android:imeOptions...actionSearch" //右下角按键为放大镜图片,搜索  android:imeOptions="actionSend"   //右下角按键内容为'发送'  android:imeOptions="actionNext

    2.4K30

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

    ,目前有新闻数据和视频数据,不过光是显示数据,看不到详细内容也不行。...其次在这样的页面中要想显示个人信息的话,可以增加一个Fragment或者通过侧滑抽屉来显示,同时既然有个人信息页面,自然就要有登录和注册的关系,之前的登录是个假的,这次我就做的真一点,用一下本地数据库。...效果图 正文   首先我们先显示新闻详情信息。...二、使用WebView 下面在Activity中新建一个WebActivity,布局是activity_web.xml,这个类用于装载WebView显示,首先改一下布局activity_web.xml,...当然并不是每一条新闻都能够去显示的,有一些新闻是没有详情信息的,这在我们点击新闻的时候就要做处理。   这是我们下面要做的事情,现在对于X5WebView还需要进行一个初始化,这样做是方便使用的。

    2.2K20
    领券