我有,我想監視的KeyEvents一個EditText,我已經設置爲監聽如下:安卓的KeyListener的一個EditText沒有收到鑰匙
mText = (EditText) this.findViewById(R.id.title);
mText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
final int view = v.getId();
switch (view) {
case R.id.title:
Log.d(LOG_TAG, "key handled");
break;
}
return false;
}
});
我的問題是,當EditText上是被鍵入到使用虛擬鍵盤,觸發日誌記錄的唯一按鍵是退格鍵。我已經驗證所有其他按鍵都不會觸發onKey()
。我確信這很簡單,但沒有發現任何似乎與此有關的SO。
感謝,
保羅
從文檔'軟鍵輸入方法的按鍵不需要觸發這個監聽器中的方法,並且實際上不鼓勵這樣做。默認的Android鍵盤不會觸發任何針對任何針對Jelly Bean或更高版本的應用程序的鍵,並且只會將其用於一些按鍵,以將應用程序定位到Ice Cream Sandwich或更早版本的應用程序。「http://developer.android.com/reference /android/text/method/KeyListener.html – 2015-02-27 09:27:22