android EditText maxLength 不工作

这是我的xml

<EditText
android:id="@+id/et_comment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textNoSuggestions|textVisiblePassword"
android:hint="Provide comments here..."
android:gravity="top"
android:maxLength="5"
android:textSize="12sp"
android:visibility="visible"
/>

使用此代码也无法正常工作

TextView editEntryView = new TextView(...);
InputFilter[] filterArray = new InputFilter[1];
filterArray[0] = new InputFilter.LengthFilter(5);
editEntryView.setFilters(filterArray);

maxLenth不起作用,我不知道为什么,但它不是。
我已经检查了堆栈上的其他答案,但它们也不起作用。
请检查是否有任何 EditText 属性冲突或问题出在哪里?

编辑:其他开发人员也面临着同样的问题
看到这里的评论 Mansi和aat
也面临着同样的问题 评论中,Vincy和Riser也面临着同样的问题

编辑:问题解决了
,我正在使用输入过滤器,它覆盖了xml中的最大长度,使其无法工作。
输入滤波器对我不起作用的原因是我使用的是另一个输入滤波器,它覆盖了之前的maxLength输入滤波器。
将其转换为单个输入过滤器为我解决了这个问题。


答案 1

试试这个,它将适用于maxlenght和输入过滤器

month.setFilters(new InputFilter[]{new InputFilterMinMax("0", "12"), new InputFilter.LengthFilter(2)});

答案 2

如果将 InputFilter 用于编辑文本,则 maxLength 将不起作用。


推荐