应项目需求 需要这么一个方法解决 虽然简单 但还是做一下备忘录
很多时候我们需要实时刷新EditText 的字数
这个时候不能想到开启线程读取 要想最简单的方法实现最理想的效果 下面的方法可以解决这个问题
首先需要一个 EditText 和一个 TextView
texteView用于记录EditText的字体个数 其实很简单
方法如下
editText为
EditText 的变量名
countText就是用于计数的TextView
很多时候我们需要实时刷新EditText 的字数
这个时候不能想到开启线程读取 要想最简单的方法实现最理想的效果 下面的方法可以解决这个问题
首先需要一个 EditText 和一个 TextView
texteView用于记录EditText的字体个数 其实很简单
方法如下
editText为
EditText 的变量名
countText就是用于计数的TextView
//记录editText输入了多少 实时刷新 editText.addTextChangedListener(new TextWatcher() { private int myselectionStart; private int myselectionEnd; @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void afterTextChanged(Editable s) { int mynumber = s.length(); // tvQuestionNumber.setText(number+""); countText.setText(mynumber+"/350"); myselectionStart = editText.getSelectionStart(); myselectionEnd = editText.getSelectionEnd(); //删除多余输入的字(不会显示出来) if (mynumber > 350) { s.delete(myselectionStart - 1, myselectionEnd); editText.setText(s); Toast.makeText(MainActivity.this, "到底了呦!!最多可以输入350个字",Toast.LENGTH_SHORT).show(); } //设置光标在最后 editText.setSelection(s.length()); } });
感觉上简单到爆炸 但是就试这个细碎的知识点才试最快忘记的 所以在此备忘 希望可以帮到你们