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属性是否有冲突或者是什么问题?

编辑:同样的问题正在被其他开发者所面临
在这里看到评论同样的问题正在面对曼西和aat
而在这里评论同样的问题正在由Vincy和Riser面对

编辑:问题解决了
我正在使用inputfilter覆盖最大长度在XML使其无法正常工作。
inputfilter没有为我工作的原因是,我正在使用另一个inputfilter覆盖以前的maxLengthinputfilter。
使它成为一个单一的inputfilter,为我解决这个问题。

Solutions Collecting From Web of "android EditText maxLength不起作用"

相当旧的post,但是,我注意到XML是一个实际的EditText对象,而您将filter添加到TextView ,可以处理它不同于EditText 。 如果手动添加InputFilter对象,则会覆盖xml属性。

InputFilter添加到View的示例代码似乎是一个TextView对象。 确保你拉到正确的视图,并将其转换为EditText如果你去手动添加filter – 它现在正在为我工​​作。

祝你好运。

如果使用InputFilter作为edittext,那么maxLength将不起作用。

试试这个,它将适用于maxlenght和inputfilter

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