如何设置 Android 中 EditText 的最大字符数?
如何设置 Android EditText 输入的最大字符数?我看到了 setMaxLines、setMaxEMS,但没有看到字符数。
How do you set the max number of characters for an Android EditText input? I see setMaxLines, setMaxEMS, but nothing for the number of characters.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(12)
在 XML 中,您可以将此行添加到
EditText
View
中,其中 140 是最大字符数:In XML you can add this line to the
EditText
View
where 140 is the maximum number of characters:动态:
通过 xml:
Dynamically:
Via xml:
您可以使用InputFilter,就是这样:
You can use a InputFilter, that's the way:
我总是这样设置最大值:
I always set the max like this:
它对我有用。
It is working for me.
输入类型必须设置“textFilter”
InputType has to set "textFilter"
在任何地方轻松使用此功能:
use this function anywhere easily:
科特林方式
Kotlin way
这种方式对我有用,这是我发现的最好的方式。
最大长度为 200 个字符
It worked for me this way, it's the best I've found.
It is for a max length of 200 characters
显然,您可以在 xml 或 InputFilter.LengthFilter 中使用 maxLength,如上面所回答。但对我来说,在某些情况下,这还不够。我创建了一个类来更灵活地设置 EditText: https://github.com/devapro/NumberWatcher
它仅适用于数字输入,但您可以更改任何类型。
Obviously you can use maxLength in xml or InputFilter.LengthFilter as answered above. But for me in some cases, it was not enough. I created a class for more flexible settings of EditText: https://github.com/devapro/NumberWatcher
It is implementation only for numbers input, but you can change it for any of the types.
它不适用于带有 maxLenght 的 XML
我用的是这段代码,可以限制字符数
it doesn't work from XML with maxLenght
I used this code, you can limit the number of characters
您可以向提交或更改事件添加验证挂钩。
You could add a validation hook to a submit or change event.