Android是否具有键盘侦听器来检测按下了哪个键? [英] Does Android have keyboard listener to detect which key is pressed?
本文介绍了Android是否具有键盘侦听器来检测按下了哪个键?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想知道在Android中按下了键盘上的哪个键.我进行了很多搜索,但还没有找到正确的答案.我已经在StackOverflow中看到了一些帖子,但是他们没有回答我:
I want to recognize which key on the keyboard is pressed in Android. I have searched a lot but I haven't reached to correct answer yet. Some posts in StackOverflow that I have seen them but they don't answer me are here:
推荐答案
您可以使用Android提供的TextWatcher api.
You can use the TextWatcher api provided by Android.
这里是 answer 之一的代码段:
field1.addTextChangedListener(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) {
if (s.length() != 0)
field2.setText("");
}
});
field2.addTextChangedListener(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) {
if (s.length() != 0)
field1.setText("");
}
});
编辑1
以下是用于跟踪键盘上所按下的键的模板:
Here's the template for tracking which key was pressed on the keyboard:
editText.setOnKeyListener(new 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
}else if(keyCode == KeyEvent.KEYCODE_BACK) {
//this is for backspace
}
return false;
}});
这篇关于Android是否具有键盘侦听器来检测按下了哪个键?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文