今天在修改一个代码时,那个代码是TextView实时跟踪Edittext输入的内容,使用的方法是:
对EditText添加 setOnKeyListener监听器
原代码是:
editText1.setOnKeyListener(new EditText.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
//设定在EditText里所输入的数据同步显示在TextView
textView1.setText(editText1.getText());
return false;
}
});
然而问题却出来了,用手机测试时,在EditText输入内容时,只有输入Enter键和Delete键TextView才更新内容,而在虚拟机中却没有此问题。
对此的解决方法是:
对editText1添加addTextChangedListener监听器,代码是:
editText1.addTextChangedListener(new TextWatcher(){
//顾名思义,是文本改变后你想做什么?在此方法中加相应的代码
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
//设定在EditText里所输入的数据同步显示在TextView
textView1.setText(editText1.getText());
}
@Overri