在EditText框中达到大小限制后,阻止用户插入更多字符

izi*_*kgo 8 android android-edittext android-alertdialog

我想阻止用户向包含编辑文本实例的警报对话框插入多于一定数量的字母.我尝试使用输入过滤器.长度过滤器,但仅显示最多为请求长度的字符串.用户仍然可以写更多字符,当我尝试删除字符时,没有任何反应,直到我删除足够多的字符使字短于限制(类似的键盘记住键).

编辑:更清楚的是,我已经尝试过使用InputFilter.这确实强制传递给EditText的字符串大小,但正如我所说,我仍然可以继续用键盘写字母,这些字母没有显示在文本框中.当我点击删除时,它首先删除多余的字母,并且只有在删除了足够的字母后,才开始看到文本框中的字母删除.我请求的场景:将字符串限制设置为10.在键盘上点击15个字符.然后点击退格键,看到文本框中的最后一个字母被删除.我希望现在更清楚了.

有人可以帮忙吗?

sos*_*ite 5

可能为时已晚,但如果有人遇到同样的问题。

在布局中:

android:inputType="textNoSuggestions|textVisiblePassword"
android:maxLength="20"
Run Code Online (Sandbox Code Playgroud)

以编程方式:

setFilters(new InputFilter[]{new InputFilter.LengthFilter(20)});
setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
Run Code Online (Sandbox Code Playgroud)


Luc*_*fer 4

您可以在 AndroidManifest.xml 中使用 EditText 的以下属性

android:maxLength="8"
Run Code Online (Sandbox Code Playgroud)

现在用户不能在 EditText 中添加超过 8 个字符。


归档时间:

查看次数:

3960 次

最近记录:

10 年,5 月 前