Ich verstehe nicht, warum dieser Teil des Codes nicht funktioniert. Nur die Rücktaste und die Eingabetaste werden erkannt. Für alle anderen Tasten wird kein Listener ausgelöst. Mein Gerät ist Nexus One.
Ich habe versucht, die OnKeyDown-Methode der Aktivität außer Kraft zu setzen, und das ist noch schlimmer. Die einzige erkannte Taste war die Zurück-Taste der Hardware.
Ich sehe rund um einen Vorschlag zu TextWatcher und onTextChanged verwenden, während das in einigen Fällen funktionieren könnte, ist es nicht eine echte Arbeit herum. Zum Beispiel, wenn Textbox leer ist, werden Sie nicht erkennen, wenn Benutzer BackSpace(Delete) Taste drücken. Also irgendwelche Ideen?
TextView txtInput = (TextView)findViewById(R.id.txtInput);
txtInput.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
makeToast(keyCode + " key pressed");
return true;
}
});