从EditText移除maxLength设置

时间:2018-11-15 10:12:52

标签: android android-edittext android-input-filter

我们知道,maxLength的{​​{1}}设置为:

EditText

或以编程方式。我的问题是,如果将android:maxLength="19" 设置为一定长度,该如何以编程方式将其删除?我想将maxLength设置为最大长度。

2 个答案:

答案 0 :(得分:0)

在android中有EditText,有时您可能想限制字符输入。 XML布局中的EditText将为您提供android:maxLength来执行此操作,但是在代码中,您可能会想知道为什么没有任何setMaxLength函数。其背后的原因是,当您要限制EditText接受某些值时,必须对其进行过滤,这将由setFilters调用,从而使我们的EditText具有固定的大小。

EditText et = new EditText(this);
int maxLength = 3;
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(maxLength);
et.setFilters(FilterArray);

答案 1 :(得分:-1)

只需尝试将maxLength属性设置为-1

android:maxLength="-1"

或以编程方式

int maxLengthofEditText = -1
editText.setFilters(new InputFilter[] {new InputFilter.LengthFilter(maxLengthofEditText)});