Android统计当前输入字符数,限制edittext输入字符数
1–>统计当前输入字符数
定义成员变量 private CharSequence temp ;//接收当前输入的字符 private int maxNum = 200; private int nowNum ;//当前输入的字符数
然后设置edittext的监听,mEditText.addTextChangedListener
在
“`
@Override
public void onTextChanged(CharSequence s, int i, int i1, int i2) {
//接收当前输入的字符
temp = s;
}
@Override
public void afterTextChanged(Editable editable) {
//当前的字符数
nowNum = editable.length();
input_tv.setText("已输入"+nowNum+"/"+maxNum+"个字");
int selectionStart = mEditText.getSelectionStart();
int selectionEnd = mEditText.getSelectionEnd();
if(temp.length()>maxNum){
//截取字符串
editable.delete(selectionStart - 1, selectionEnd);
mEditText.setText(editable.toString());
int selection = editable.length();
//光标回到末尾
mEditText.setSelection(selection);
}
}
});
“`即可实现如图效果(有更好的方法欢迎交流,指点)
2–>限制edittext输入字符数
方法一:在edittext布局中加入android:maxLength="200"
即可规定最大输入200字符,*(1)中英文都算一个字符。
(2)字数到,不能输入*
方法二:
InputFilter限制,同布局中限制类似。
还没有评论,来说两句吧...