The best way is to use the TextWatcher class
EditText txt = (EditText) findViewById(R.id.editText1);
TextWatcher myTextWatcher = new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
Toast.makeText(MainActivity.this, "YOU PRESSED A", Toast.LENGTH_SHORT).show();
Log.d("HEY", "You pressed A");
}
};
txt.addTextChangedListener(myTextWatcher);