我尝试获取EditText
的过滤器,但InputFilter.LengthFilter
没有LENGTH(或SIZE或其他)参数!
所以,我使用EditText
无法获得InputFilter
最大长度!
我错过了什么吗?有什么建议吗?
答案 0 :(得分:0)
为什么要尝试“获取”InputFilter.LengthFilter的长度?您应该已经知道设置它的长度。
如果您需要更改它,只需重置过滤器并将其应用于EditText视图。同样,您将知道长度值的设置。
答案 1 :(得分:0)
尝试创建自定义InputLength过滤器。 这看起来像这样: (CustomLengthFilter.java) import android.text.InputFilter;
public class CustomLengthFilter extends InputFilter.LengthFilter {
int maxLength;
public CustomLengthFilter(int max) {
super(max);
maxLength = max;
}
public int get_MaxLength(){
return maxLength;
}
}
然后在你的editText:
InputFilter[] inputFilterCollection = this.getFilters();
CustomLengthFilter mCustomLengthFilter = null;
for(InputFilter eachInputFilter : inputFilterCollection){
if(eachInputFilter instanceof CustomLengthFilter){
mCustomLengthFilter = (CustomLengthFilter) eachInputFilter;
}
}
if(mCustomLengthFilter != null){
int maxLength = mCustomLengthFilter.get_MaxLength();
}