我有一个EditText
,我想限制可以在其中输入的字符数,并以编程EditText
方式进行此限制,怎么做?例如,假设我想将其限制为仅允许 10 个字符。
问问题
16539 次
4 回答
42
您可以使用InputFilter以编程方式限制 EditView 中的字符数:
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(10);
your_edittext.setFilters(FilterArray);
如需更多帮助,您可以查看本教程以限制 EditView 中的字符数:
http://www.tutorialforandroid.com/2009/02/maxlength-in-edittext-using-codes.html
于 2012-11-16T10:22:55.840 回答
1
我会实现一个过滤器:
InputFilter filter = new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
if (source.length > 10){
//cancel the edit or whatever
}
}
};
EditText editText = (EditText) findViewById(R.id.rg);
editText.setFilters(new InputFilter[] {filter});
于 2012-11-16T10:23:26.277 回答
1
public void setEditTextMaxLength(int length) {
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(length);
edt_text.setFilters(FilterArray);
}
于 2015-01-16T13:08:26.447 回答
1
试试这个我的朋友简单的游戏简单的生活
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(5);
input.setFilters(FilterArray);
于 2016-05-12T14:25:39.007 回答