EditText监听

我们要实现:当EditText的Text改变时,我们希望得到通知,但是可惜的是Android并没有这个监听器,也就无从得知变化了,但我们可以使用TextWatcher类可以帮助我们来实现这个功能。

现有一个id = edit的EditText。

1、定义一个TextWatcher的实例。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
private  TextWatcher watcher =  new  TextWatcher(){
 
     @Override
     public  void  afterTextChanged(Editable s) {
         // TODO Auto-generated method stub
     }
 
     @Override
     public  void  beforeTextChanged(CharSequence s,  int  start,  int  count,  int after) {
         // TODO Auto-generated method stub
     }
 
     @Override
     public  void  onTextChanged(CharSequence s,  int  start,  int  before,  int count) {
         Log.d( "TAG" , "[TextWatcher][onTextChanged]" +s);
     }
     
};

2、在EditText上注册该TextWatcher实例。

?
1
2
EditText et = (EditText)findViewById(R.id.edit);
et.addTextChangedListener(watcher);

这样每当EditText的Text改变的时候,onTextChanged()就会被调用!

你可能感兴趣的:(EditText监听)