美文网首页
使用MaterialEditText

使用MaterialEditText

作者: 程思扬 | 来源:发表于2018-08-30 21:15 被阅读0次

参考文档
https://github.com/rengwuxian/MaterialEditText
说明文档
http://www.rengwuxian.com/post/materialedittext

一, MaterialEditText是什么?
AppCompat v21 使我们在APP中使用Material Design EditText很容易,但是限制太多,所以,一群牛人做了这个符合MaterialDesign的EditText组件,它是继承EditText的,我们可以很方便的用它。我这里只是简单地用下,详细使用请参考以下官方文档。

该开源项目地址MaterialEditText

中文文档中文文档

二,实现效果
在布局文件中把 EditText 替换为 com.rengwuxian.materialedittext.MaterialEditText 就行了。MaterialEditText 是直接继承的 EditText ,没有加入一些 Wrapper Layout , 因此多数情况下你不需要修改 java 文件, 这比原来的EditText可是好看多了,有没有?

图片.png
图片.png

三,实现过程
1,导库
compile'com.rengwuxian.materialedittext:library:2.1.4‘
2,用组件(以本图用户名为例)

<com.rengwuxian.materialedittext.MaterialEditText

   app:met_baseColor="#0056d3"  //一些颜色,默认就行了

   app:met_iconPadding="2dp"  //图标边距

   app:met_primaryColor="#982360"

   app:met_errorColor="#ddaa00"

   app:met_clearButton="true"  //设置清楚按钮,就是尾部的那个X

   app:met_iconLeft="@drawable/ic_perm_identity_black_24dp"  //设置图标资源,这里  是那个人头图标

   app:met_singleLineEllipsis="false"  //单行省略设置

   android:layout_width="match_parent"

   android:lines="1"  //行数

   android:hint="用户名"   //我把它看作提示语

   app:met_floatingLabelText="用户名"  //标签文字,输入状态时它会浮在上面

   app:met_floatingLabel="highlight"  //标签文字高亮

   android:id="@+id/editText_username"  

   android:layout_height="wrap_content"

   app:met_autoValidate="true"  //自动校准

   app:met_minCharacters="1"  //最小字符数

   app:met_maxCharacters="20"  //最大字符数

/>

Base Color 被用作背景线的颜色、主字体的颜色(透明度被重置为87%)和提示字体的颜色(透明度被重置为26%)。你可以使用 app:met_baseColor
(xml) 或者 setBaseColor()
(java) 来指定 Base Color 。Base Color 的默认值为纯黑。---- <code>字体和其他的默认颜色</code>
app:met_baseColor="#0056d3"
Primary Color 被用作激活状态的输入框背景色、高亮的Floating Label色和底部省略号的颜色。你可以使用 app:met_primaryColor
(xml) 或者 setPrimaryColor()
(java) 来指定 Primary Color。如果没有设置Primary Color,默认将使用 Base Color 来替代。

 app:met_baseColor="#0056d3"
 app:met_primaryColor="#982360"

当设置显示底部省略号后,控件会在文字向左滚动时在底部左侧显示一个三个点的省略号,点击省略号将自动把光标置于字符串的开始处。你可以通过 app:met_singleLineEllipsis=true
(xml) 或者setSingleLineEllipsis()
(java) 来设置它。这个属性将自动设置 android:singleLine
为 true。
注意:底部省略号会自动增大控件底部的高度。

app:met_singleLineEllipsis="true"

代码设置如下图

    editText_username= (MaterialEditText) findViewById(R.id.editText_username);  //赋值
    editText_username.isCharactersCountValid()  //用来判断返回字数是否符合要求

相关文章

网友评论

      本文标题:使用MaterialEditText

      本文链接:https://www.haomeiwen.com/subject/nmbdwftx.html