给EditText添加一个监听事件,当检测到里面的内容变化以后,根据需求,修改相关的内容就可以了。
1.TextWatcher
使用EditText的addTextChangedListener(TextWatcher watcher)方法对EditText实现监听,TextWatcher是一个接口类,所以必须实现TextWatcher里的抽象方法:
当EditText里面的内容有变化的时候,触发TextChangedListener事件,就会调用TextWatcher里面的抽象方法。
- public class MainActivity extends Activity {
private EditText text; String str; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); text = (EditText)findViewById(R.id.text); text.addTextChangedListener(textWatcher); } private TextWatcher textWatcher = new TextWatcher() { @Override public void afterTextChanged(Editable s) { // TODO Auto-generated method stub Log.d("TAG","afterTextChanged--------------->"); } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { // TODO Auto-generated method stub Log.d("TAG","beforeTextChanged--------------->"); } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { Log.d("TAG","onTextChanged--------------->"); str = text.getText().toString(); try { //if ((heighText.getText().toString())!=null) Integer.parseInt(str); } catch (Exception e) { // TODO: handle exception } } }; - }
- 2.OnKeyListener
- editText1.setOnKeyListener(new OnKeyListener(){
public boolean onKey(View arg0, int arg1, KeyEvent arg2) {
textView.setText(editText1.getText().toString());
return false;
}
});