最大字符数:
private final int INT_MAX_NUM =256;
private classEditChangeLisenerimplements TextWatcher{@Override public void beforeTextChanged(CharSequences, intstart, intcount, intafter) {}@Override public void onTextChanged(CharSequences,intstart, intbefore, intcount) {Editableeditable= mEditInput.getText(); intlen=editable.length(); if(len> INT_MAX_NUM){intselEndIndex=Selection.getSelectionEnd(editable); Stringstr=editable.toString(); //截取新字符串 StringnewStr=str.substring(0,INT_MAX_NUM); mEditInput.setText(newStr); mstrInput =newStr; editable= mEditInput.getText(); //新字符串的长度 intnewLen=editable.length(); //旧光标位置超过字符串长度 if(selEndIndex>newLen){selEndIndex=editable.length(); }//设置新光标所在的位置 Selection.setSelection(editable,selEndIndex); return; }mstrInput =editable.toString(); }@Override public void afterTextChanged(Editables) {}}
mEditListener = newEditChangeLisener();mEditInput.addTextChangedListener(mEditListener);
上述代码即可实现!!