1.功能
监听EditText的内容长度,当超过长度时无法继续输入,并给出提示信息
2.实现思路
实现TextWatcher接口,EditText控件绑定该接口
3.代码
private static final int MAX_LEN = 1000;
@Override
public void afterTextChanged(Editable s) {
//取消监听避免UI卡顿
mEditText.removeTextChangedListener(this);
if (s != null) {
int len = mEditText.getText().toString().length();
if (len >= MAX_LEN) {
//设置显示前MAX_LEN个字符
mEditText.setText(mEditText.getText().toString().substring(0, MAX_LEN));
//设置光标位置
mEditText.setSelection(MAX_LEN);
//给出提示
showBottomToast(getString(R.string.horn_input_max_len));
}
}
//重新绑定监听
mEditText.addTextChangedListener(this);