내 앱에 "edittext"가 있는데, 소프트 키보드에서 특정 문자를 누르면 할 일을하고 싶습니다. 나는 어떤 방법으로 stackOverflow가 제안하는 방법을 시도했지만 문자/a, b/B 등은 감지되지 않습니다. 그러나 Enter와 Del은 수행합니다. 로드를 읽은 후 여기에있는 예에 따라 edittext 클래스를 재정의해야합니다. 내가 여기에 방법을 재정의하고 있습니다 :Android 소프트 키보드 문자가 감지되지 않습니다.
@Override
public boolean sendKeyEvent(KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN
&& event.getKeyCode() == KeyEvent.KEYCODE_A) {
ZanyEditText.this.setRandomBackgroundColor();
return false;
}
return super.sendKeyEvent(event);
}
는 또한 표준의 EditText의 onKeyListener을 재정의하는 시도 :
txtSMS.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// You can identify which key pressed buy checking keyCode value
// with KeyEvent.KEYCODE_
if (keyCode == KeyEvent.KEYCODE_DEL) {
// this is for backspace
Toast.makeText(getApplicationContext(), "Del was pressed", Toast.LENGTH_SHORT).show();
}
if (keyCode == KeyEvent.KEYCODE_A) {
// this is for backspace
Toast.makeText(getApplicationContext(), "A was pressed", Toast.LENGTH_SHORT).show();
}
return false;
}
을 그러나 델의 두 경우 모두에서 지금까지 발견된다. 내가 어떻게 알파벳의 문자를 감지 할 수 없습니까? 그들은 ... 텍스트 상자에
감사