Android统计当前输入字符数,限制edittext输入字符数

喜欢ヅ旅行 2021-09-26 01:46 737阅读 0赞

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;
}

  1. @Override
  2. public void afterTextChanged(Editable editable) {
  3. //当前的字符数
  4. nowNum = editable.length();
  5. input_tv.setText("已输入"+nowNum+"/"+maxNum+"个字");
  6. int selectionStart = mEditText.getSelectionStart();
  7. int selectionEnd = mEditText.getSelectionEnd();
  8. if(temp.length()>maxNum){
  9. //截取字符串
  10. editable.delete(selectionStart - 1, selectionEnd);
  11. mEditText.setText(editable.toString());
  12. int selection = editable.length();
  13. //光标回到末尾
  14. mEditText.setSelection(selection);
  15. }
  16. }
  17. });

“`即可实现如图效果(有更好的方法欢迎交流,指点)

2–>限制edittext输入字符数
方法一:在edittext布局中加入android:maxLength="200"即可规定最大输入200字符,*(1)中英文都算一个字符。
(2)字数到,不能输入*
方法二:
InputFilter限制,同布局中限制类似。

发表评论

表情:
评论列表 (有 0 条评论,737人围观)

还没有评论,来说两句吧...

相关阅读