Material Design学习之 EditText (功能强大,优于系统自带,感谢“扔物线”)

转载请注明出处:王亟亟的大牛之路

继续之前的Material Design历程,今天是EditText,素材来源于http://www.rengwuxian.com/post/materialedittext(那么代码解释部分大家可以看原作者的文档,我在这里把理论知识灌输下就OK了,作者做的很全面,我都不知道要讲什么了 只能6666666)

大牛的这个库已经有了广泛的认知度和认可,EditText部分就拿他的作为比较推崇的演示版本。

因为大牛已经做了Jar包的支持,所以平时的拆的工作都省了,要直接使用jar包的小伙伴点这里:https://github.com/rengwuxian/MaterialEditText/releases/download/2.1.4/MaterialEditText-2.1.4.aar

Grade的点这里:

compile ‘com.rengwuxian.materialedittext:library:2.1.4‘

那么,理论知识开始!



文本框

文本框可以让用户输入文本。它们可以是单行的,带或不带滚动条,也可以是多行的,并且带有一个图标。点击文本框后显示光标,并自动显示键盘。除了输入,文本框可以进行其他任务操作,如文本选择(剪切,复制,粘贴)以及数据的自动查找功能。

文本框可以有不同的输入类型。输入类型决定文本框内允许输入什么样的字符,有的可能会提示虚拟键盘并调整其布局来显示最常用的字符。常见的类型包括数字,文本,电子邮件地址,电话号码,个人姓名,用户名,URL,街道地址,信用卡号码,PIN

码,以及搜索查询。

我们常见的文本框的一些属性:

    android:inputType="none"
    android:inputType="text"
    android:inputType="textCapCharacters" 字母大写
    android:inputType="textCapWords" 首字母大写
    android:inputType="textCapSentences" 仅第一个字母大写
    android:inputType="textAutoCorrect" 自动完成
    android:inputType="textAutoComplete" 自动完成
    android:inputType="textMultiLine" 多行输入
    android:inputType="textImeMultiLine" 输入法多行(如果支持)
    android:inputType="textNoSuggestions" 不提示
    android:inputType="textUri" 网址
    android:inputType="textEmailAddress" 电子邮件地址
    android:inputType="textEmailSubject" 邮件主题
    android:inputType="textShortMessage" 短讯
    android:inputType="textLongMessage" 长信息
    android:inputType="textPersonName" 人名
    android:inputType="textPostalAddress" 地址
    android:inputType="textPassword" 密码
    android:inputType="textVisiblePassword" 可见密码
    android:inputType="textWebEditText" 作为网页表单的文本
    android:inputType="textFilter" 文本筛选过滤
    android:inputType="textPhonetic" 拼音输入
    //数值类型
    android:inputType="number" 数字
    android:inputType="numberSigned" 带符号数字格式
    android:inputType="numberDecimal" 带小数点的浮点格式
    android:inputType="phone" 拨号键盘
    android:inputType="datetime" 时间日期
    android:inputType="date" 日期键盘
    android:inputType="time" 时间键盘

这一系列的标签,大牛的控件也是支持,因为他是

public class MaterialEditText extends AppCompatEditText 

再上一层

public class AppCompatEditText extends EditText implements TintableBackgroundView 

所以也就出现了例子里的黑点的效果

文本框和之前的一系列控件一样也有2种主题

浅色:

//默认的一些参数
提示和输入字体:Roboto Regular 16 sp
输入框高度:48 dp
文本顶部和底部填充:16 dp
文本字段分隔填充:8 dp

效果:

暗色:

goole原文:http://www.google.com/design/spec/components/text-fields.html

因为jar包可能多出重复引用nineoldandroids,我还是把包拆了拆,便于Eclipse的同学用,因为用作者的jar包可能在别的库有重复引用的可能,地址:https://github.com/ddwhan0123/BlogSample/blob/master/MaterialDesignEditText.zip

这一篇主要就拆拆包,然后各种拜服原作者,一串6666666 都不知道要怎么讲了,人家都做好了。。。。 TOT

时间: 2024-10-09 23:42:05

Material Design学习之 EditText (功能强大,优于系统自带,感谢“扔物线”)的相关文章

MATERIAL DESIGN学习笔记

一.核心思想 ,aterial design的核心思想,就是把物理世界的体验带进屏幕.去掉现实中的杂质和随机性,保留其最原始纯净的形态.空间关系.变化与过渡,配合虚拟世界的灵活特性,还原最贴近真实的体验,达到简洁与直观的效果. Material design是最重视跨平台体验的一套设计语言.由于规范严格细致,保证它在各个平台使用体验高度一致.不过目前还只有Google自家的服务这么做,毕竟其他平台有自己的规范与风格. 二.材质与空间 材质 Material design中,最重要的信息载体就是魔

Android Material Design学习之RecyclerView代替 ListView

前言 # Android Material Design越来越流行,以前很常用的 ListView 现在也用RecyclerView代替了,实现原理还是相似的.笔者实现一下 RecyclerView,代码比较简单,适合初学者,如有错误,欢迎指出. 源码地址(欢迎star) https://github.com/studychen/SeeNewsV2 本文链接 http://blog.csdn.net/never_cxb/article/details/50495505,转载请注明出处. 复习 L

Material Design学习之 ProgreesBar

转载奇怪注明出处:王亟亟的大牛之路 继续我们Material Design的内容,这一篇讲的是进度条,上一篇是Switch地址如下:http://blog.csdn.net/ddwhan0123/article/details/50592579 进度和动态 在用户可以查看并与内容进行交互之前,尽可能地减少视觉上的变化,尽量使应用加载过程令人愉快.每次操作只能由一个活动指示器呈现,例如,对于刷新操作,你不能即用刷新条,又用动态圆圈来指示. 指示器类型 在操作中,对于完成部分可以确定的情况下,使用确

Material Design学习之 Switch(详细解释)

转载请注明出处:王亟亟的大牛之路 继续这一系列的Material Design之行,昨天讲的是Sliders链接如下:http://blog.csdn.net/ddwhan0123/article/details/50586510 今天讲的是Switch,本来有考虑把它和CheckBox一起做了,但是毕竟实现不同,还是分开做吧,废话不多,开始正题 开关 On/off 开关切换单一设置选择的状态.开关控制的选项以及它的状态,应该明确的展示出来并且与内部的标签相一致.开关应该单选按钮呈现相同的视觉特

Material Design学习之 Sliders(详细分析,悬空气球显示进度值,附带Eclipse可以jar)

转载请注明出处:王亟亟的大牛之路 Material Design系列的文章这是第五篇,今天讲滑块控件(Sliders). 之前的传送门:http://blog.csdn.net/ddwhan0123/article/details/50578348(代码实现都靠画,学好View还是很重要的) 老规矩,先说下理论部分 滑块控件(Sliders,简称滑块)可以让我们通过在连续或间断的区间内滑动锚点来选择一个合适的数值.区间最小值放在左边,对应的,最大值放在右边.滑块(Sliders)可以在滑动条的左

Material Design学习

Android 5.0 推出Material Design 同时推出的新的控件和布局有: RecyclerView CardView Paletee 参考:http://blog.csdn.net/feiduclear_up/article/details/46439005 ToolBar 参考:http://blog.csdn.net/feiduclear_up/article/details/46457433 FloatingActionButton TextInputLayout Snac

Android Material Design 学习笔记 - Matrial Theme

google在2014年 I/O大会上推出了一种新的设计设计语言—Material design,这种设计语言语言旨在为手机.平板电脑.台式机和“其他平台”提供更一致.更广泛的“外观和感觉”(附上官方链接:http://developer.android.com/training/material/index.html) 在以后的Android中,我觉得Design风格将逐渐流行,所以:为了跟着潮流,我们也是要不断的与时俱进 --->> 如何使用Design主题? 使用的时候,你仅仅需要在St

Material Design学习之 Dialog(顺便把前两天AppBarLayout没讲的部分提一提)

转载请注明出处:王亟亟的大牛之路 继续之前的MD系列的内容,今天说Dialog,不知道还能翻几篇,反正这一系列都说完了话就找点别的内容整整. Dialogs (提示框)用于提示用户作一些决定,或者是完成某个任务时需要的一些其它额外的信息. Dialog可以是用一种 取消/确定 的简单应答模式,也可以是自定义布局的复杂模式,比如说一些文本设置或者是文本输入 . 官方的呈现,像这样 Dialog 包含了一个标题(可选),内容 ,事件. 标题:主要是用于简单描述下选择类型.它是可选的,要需要的时候赋值

【XFeng安卓开发笔记】edittext中怎样禁止系统自带键盘弹出但光标还在

网上又不少方法,均告失败,最终找到以下的方法: // 隐藏系统键盘 public void hideSoftInputMethod(EditText ed) { getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); int currentVersion = android.os.Build.VERSION.SDK_INT; String methodName = null