在今天开发中遇到一个自己写的自定义控件,因为考虑到复用,在每个需求下的edittext的输入长度不一样,在xml文件里面设置是不能实现这个需求的,于是在发现了这个API,可以通过代码设置!
希望对大家有所帮助!
public void setEtCoustomLength(int length){
if (length>0) {
etCoustom.setFilters(new InputFilter[]{new InputFilter.LengthFilter(length)});
}
}
重点是这样:
setFilters(new InputFilter[]{new InputFilter.LengthFilter(length)});
然后就实现了!
另外:将光标移到最后
EditText et = (EditText)findViewById(R.id.inbox);
et.setSelection(et.getText().length());
如果文字显示不下去,省略号的位置
android:ellipsize="start"
补充下:
有人说xml可以配置,这个是没有问题的,因为我之前的需求是动态设置,是不一样的,但是又要复用。
所以必须代码控制!
xml如下:
可以在layout xml中加上属性android:maxLength