使用MaterialEditText

鄢晔
2023-12-01

一,What is MaterialEditText?

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

该开源项目地址MaterialEditText 

中文文档中文文档 

二,实现效果

    这比原来的EditText好看多了,有木有?


未输入状态
输入状态

三,实现过程

  1,导库

我用的是gradle,所以直接在build.gradle里加

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"  //最大字符数

/>

其它属性请参考上面的开源文档

3,代码设置

editText_username= (MaterialEditText) findViewById(R.id.editText_username);  //赋值

editText_username.isCharactersCountValid()  //返回字数是否符合要求

还有其他的属性,比如可以设置正则表达式匹配字符串等,我还没用过,有兴趣自己去研究吧。

 类似资料: