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

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

,以下几个属性和方法需要声明一下: app:hintAnimationEnabled="true"可以开启动画,这个为true时,获得焦点的时候hint提示问题会动画地移动上去。...()用于给textInputLayout包裹的EditText设置内容变化监听,我们可以自己重写一个监听实现里面的方法进行相关逻辑的处理 效果如下: TextInputLayout源码分析 TextInputLayout...); a.recycle(); 从TypedArray中取出一些用户给TextInputLayout设置的属性,比如给hint设置的文字,mHintAnimationEnabled,hint内文字的动画是否可用...的addView方法,如果不是EditText,也调用父类的addView方法,查看setEditText方法 内部 private void setEditText(EditText editText...,同时new了一个TextPaint来进行文本的绘制,然后是new出来3个矩形区域,mCollapsedBounds:输入框处于折叠状态下的矩形区域,mExpandedBounds:提示框获得焦点,提示文字向上展开的矩形区域

1.8K50

TextInputLayout-Android M新控件

但是Theme.AppCompat 并没有实现谷歌官方应用中用到的每个material组建。其中一个重要的特性就是AppCompat theme没有提供一个显示在EditText上方的浮动标签。...另一个重要的细节是记得正确设置EditText的inputType属性。...一个单一的EditText 在输入文字的时候会隐藏hint,而被包含在TextInputLayout中的EditText则会让hint变成一个在EditText上方的浮动标签。...如果没有验证,后台可能反馈回不正确的结果呈现给用户。对于用户来说既浪费了时间又体验不好。在发送到后台之前你应该先检查输入的正确性。...现在我们定义了什么是错误的什么是正确的,也知道了如何获取EditText中的数据以及显示可能的错误,onClick方法的实现就很简单了。

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

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

    如果我们想写一个登陆界面是不是一般都写两组TextView,EditText及一个Button,不过体验并不是太好,等等这些麻烦的的处理在Material Design TextInputLayout...hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); } } } 这时我们就会进一步想,怎么知道用户输入的是一个正确的邮箱地址或者正确格式的密码呢...public boolean validatePassword(String password) { return password.length() > 5; } } 如何获得输入框中的文字呢...---- 检索数据 正如我所说的,TextInputLayout 只是一个包装,但不像  LinearLayout 并且  ScrollView,你可以使用特定的方法获得它的子元素  getEditText...没有必要使用findViewById。

    1.4K20

    Android Material Design系列之主题样式介绍说明等

    这个也只能在API21以上才能用各控制元件的预设颜色和colorAccent正好对应 在Style上设置 以上的颜色属性均是在 style 的属性中设置。...TextInputLayout TextInputLayout继承LinearLayout,因此我们需要将EditView包含在TextInputLayout之内才可以使用,言外之意:TextInputLayout...里面可以包含一个且只能有一个EditText,与传统的EditText不同,在输入时EditText的hint提示文字会滑到上方,在用户输入的同时提示用户当前要输入的是什么,同时还可以设置输入错误的提示信息...TextInputLayout常用的方法有如下: setHint():设置提示语。 getEditText():得到TextInputLayout中的EditView控件。...到这里今天的内容就讲完了,Material Design系列其实还没有完,今天讲了主题样式,下次就有可能讲根据主题样式设置夜间模式,还有以后的转场动画等内容。

    1.2K70

    Android EditText 获得输入焦点 以及requestfocus()失效的问题

    最近做公司项目的时候,经常会遇到一个问题,就是我为某个控件如EditText设置requestfocus()的时候不管用,比如说登陆的时候,我判断下用户输入的密码,如果正确就登陆,错误就提示密码错误,...并且输入框获取焦点,但是实际中确不起作用 package com.example.hfs.requestfocusdemo; import android.content.Intent; import...public class MainActivity extends AppCompatActivity implements View.OnClickListener { private EditText...) this.findViewById(R.id.et_username); mPassWord= (EditText) this.findViewById(R.id.et_password...,是从左到右,从上到下的顺序,正在加载的过程中,如果此时requestFocus(),的话,有可能此时还没把整个界面刷新好,导致requestFocus无效。

    3K60

    按钮样式的正确方式

    按钮样式的正确方式 如果你正在建立一个网站或一个web应用,你可能会用到按钮,也许看起来像按钮的链接。不管怎样,让这些正常展示是很重要的。...在本教程中,我们将为和元素以及一个自定义.btn的CSS组件创建基本样式。 你会在这个过程的每一步中找到一个演示页面。...重置样式 通常,网站或应用程序中可点击事件的99.9%的元素应该是或元素。...但在某些浏览器中,focus样式会一直保留,直到用户点击页面上的其他内容为止。 在我的测试中,受影响的浏览器包括Chrome(66),Edge(16)和Firefox(60,仅用于链接)。...我们可以使用它来从没有焦点可见类的焦点元素中移除焦点样式: /* hide focus style if not from keyboard navigation */ .js-focus-visible

    3.7K20

    如何获得正确的向量嵌入

    向量嵌入的维数等于模型中倒数第二层的大小,因此与向量的大小或长度是可交换的。...向量嵌入的含义是什么? 有人曾问我向量嵌入中每个维度的含义。简短的回答是没有意义。向量嵌入中的单个维度本身没有任何意义,因为它太抽象而难以确定其含义。...例如,在法律数据上训练的模型会学到不同于在医疗保健数据上训练的模型的东西。我在比较向量嵌入的文章中探讨了这个话题。 生成正确的向量嵌入 如何获得适当的向量嵌入?首先需要确定您希望嵌入的数据类型。...GPT-3 是迄今为止最流行的语言模型,由严格的解码器组成。它们对输入进行编码并预测正确的下一个 token。...AI 获得的关注较少。

    41810

    Android开发笔记(一百三十八)文本输入布局TextInputLayout

    文本输入布局TextInputLayout TextInputLayout是MaterialDesign库中对编辑框EditText进行增强的一个控件。...众所周知,EditText未输入字符时,我们可以给它显示默认的提示文字hint;可是一旦输入字符,这个hint提示就消失了,虽然没有提示也没有什么大碍,但有总比没有好呀。...; 2、编辑框所在页面的Activity需要继承自AppCompatActivity,否则运行时打开页面会报错; 3、布局文件中在TextInputLayout节点下面加入EditText控件,必须并且只能加入一个...这个好坑,既然出现问题,就想办法解决它,解决办法如下所示(以下方案任选其一): 1、在布局文件中给EditText控件设置maxLength属性,指定允许输入字符串的最大长度。...下面是使用TextInputLayout+EditText的横屏输入页面,可以看到此时编辑框内没有提示文字。 ?

    2K30

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

    toast就关掉了,而且具体哪一行错误也没有标红,这就很尴尬了,那么今天这个控件也是一个输入框,但是外层加一个布局(TextInputLayout),就可以达到精确到一行提示具体错误。...TextInputLayout是22.2.0新添加的控件, 要和EditText(或EditText的子类)结合使用,并且只能包含一个EditText(或EditText的子类)。...一般情况下,EditText获得光标的时候hint会自动隐藏,这样不是很友好。...现在仅仅是过度效果,还没有加提示信息,用法很简单,但注意一点TextInputLayout只能包含一个TextInputEditText,如果写用户名和密码那就写两个TextInputLayout,哦,...> 这里要注意的是Id是加在 TextInputLayout上,在Activity中获取也是获取的layout,那么怎么获取edittext输入的数据呢,有方法的。

    1.6K100

    TextInputLayout的使用与实现

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

    1.2K40

    如何获得对云计算的正确控制

    调研机构Gartner公司做出了这样的比喻:与自己驾驶汽车相比,企业将业务移动到云端有些像乘坐飞机,而在旅程中,飞机由机组人员进行控制,这可能会引起人们的焦虑。...因此,企业信息安全和风险管理领导者需要采用间接控制的新方法来提高效率和安全性,最重要的是让人高枕无忧。考虑到这一点,人们将会尝试定义如何对云计算进行正确的控制。...设计正确的身份和访问管理策略 安全团队和开发人员可以发现难以掌握基于云计算的控制概念。...在开始使用云计算服务提供商的服务之前,这些都是企业需要获得答案的问题。在此提出的另一条建议是将外部托管数据的安全要求与风险偏好背景下的云计算服务提供商功能进行比较。...控制云平台并不意味着企业应该管理它的各个方面,但要确保知道负责什么,而不是获得全面的控制。

    1.3K00

    Android自定义EditText:一款简单实用的智能EditText(一键删除&自定义样式)

    前言 Android开发中,EditText的使用 非常常见 本文将带来一款 附带一键删除功能 & 自定义样式丰富的 SuperEditText控件的使用,希望你们会喜欢。...简介 一款 自定义样式丰富 & 附带一键删除功能的 SuperEditText控件 已在Github开源:Super_EditText,欢迎 Star ! 2....需要具备的功能如下: 一键删除 丰富的自定义样式:左侧图标、删除功能图标、分割线 & 光标 样式变化。...特点 对比市面上EditText控件,该控件Super_EditText 的特点是: 3.1 功能实用 一键删除功能 在需求中非常常见,现将其封装后更加方便使用 可自定义样式程度高(比自带的强大 & 方便...),不复杂却能满足一般的EditText使用需求 可自定义样式如下:(注:该样式的设置是系统自带的 API 所不具备的) 3.2 使用简单 仅需要简单的xml属性配置 下面1节会详细介绍其使用方法

    94420

    EditText光标不会往后挪动的方法,edittext 禁止点击,点击后没有软键盘;挂载,byte 进制转化,byte中出现负数,EditText属性

    "false" //不能呼输入; android:focusableInTouchMode="false" //没有onTouch焦点,不可点击; 我的代码,失去焦点,点击后没有软键盘 EditText...byte 进制转化 16进制 : 31 是 十进制 :49 ASCII:1; 在数据传输中,byte 是传输的基本形式,在java中转化为流进行数据传输,byte 是16进制的,再转...--sentences:仅第一个字母大写;words:每一个单词首字母大小、 用空格区分单词;characters:每一个英文字母都大写--> 8.改变输入法中回车按钮的执行 android:...--EditText没有这个属性,但TextView有,居中--> android:typeface="monospace" EditText的左边输出一个drawable--> android:drawablePadding <!

    7300

    EditText在RecyclerView中的解决方案

    有时候,一个列表中的Item会有EditText的出现,而由于View复用机制,如果不好好处理EditText,将会出现一些问题。...其实有些问题的出现,还是由于没有理解RecyclerView的复用机制和EditText,主要原因还是菜,哈哈。...菜是原罪 EditText在RecyclerView中的问题 例子是这样的,每个Item包含一个title、一张图片以及一个评分,这个评分就是通过输入框来输入的。...那下面先来进行数据的绑定。 问题2——错误的绑定机制 要想在EditText输入后绑定数据,怎么搞?...首先我是试了一个,removeTextWatcher的方法,那就是在Adapter的detachViewHolderFromWindow方法中移除TextWatcher,如下: class PicAdapter

    2.8K20

    4-VVI-材料设计之沉浸标题栏和TextInputLayout

    零、前言 这是两个比较小的点,放在一起说一下: 沉浸标题栏:现在基本上都用沉浸标题栏了,不然最顶的一小块跟app风格不搭 TextInputLayout:包裹一个EditeText,多用于登陆验证的输入框...依赖 implementation 'com.android.support:design:26.1.0' 输入框获得焦点后会有一个上移动画,还可以设定小眼睛显隐密码 ?...TextInputLayout.png TextInputLayout android:id="@+id/til2"...android:layout_width="match_parent" android:layout_height="wrap_content"> EditText.../style> ---- 后记、 1.声明: [1]本文由张风捷特烈原创,转载请注明 [2]欢迎广大编程爱好者共同交流 [3]个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正 [4]你的喜欢与支持将是我最大的动力

    58230
    领券