码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2016-01-29 12:27:49      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

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

继续之前的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

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

标签:

原文地址:http://blog.csdn.net/ddwhan0123/article/details/50605687

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!