监听EditText输入框内输入内容的变化

    xiaoxiao2021-03-25  112

    输入框在开发中是一个很常见的控件,可能很多时候我们不仅仅是用来简单的用它来输入内容这么简单,有时候可能还需要拿到甚至是监听输入框里面的内容,然后作出一个合理的逻辑判断,对EditText监听安卓系统提供了TextWatcher来监听输入框里面内容的变化情况。示例如下

    ed_content.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { Log.e("xie","beforeTextChanged"+s+" "+start+" "+count+" "+after); // s:之前的文字内容 // start:添加文字的位置(从0开始) // count:不知道 一直是0 // after:添加的文字总数 } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { Log.e("xie","onTextChanged"+s+" "+start+" "+" "+before+" "+count+" "); // s:之后的文字内容 // start:添加文字的位置(从0开始) // before:不知道 一直是0 // before:添加的文字总数 if (s.length() > 6){ Toast.makeText(MainActivity.this,"输入长度不允许超过6位",Toast.LENGTH_LONG).show(); s = s.toString().substring(0,s.length()-1).trim(); ed_content.setText(s.toString()); ed_content.setSelection(s.length()); //设置输入光标的位置 } } @Override public void afterTextChanged(Editable s) { Log.e("xie","afterTextChanged"+s+" "); // s:之后的文字内容 } });

    转载请注明原文地址: https://ju.6miu.com/read-18391.html

    最新回复(0)