【发布时间】:2011-01-16 17:49:29
【问题描述】:
如何使用 android SDK 捕捉手机按键?我找了好几个小时都没有找到任何东西..
例如:
在某些情况下,我想在用户按下电话上的“挂断”按钮时捕捉到消息,然后在消息到达操作系统之前将其丢弃。
这可能吗?
【问题讨论】:
标签: android key message keypress
如何使用 android SDK 捕捉手机按键?我找了好几个小时都没有找到任何东西..
例如:
在某些情况下,我想在用户按下电话上的“挂断”按钮时捕捉到消息,然后在消息到达操作系统之前将其丢弃。
这可能吗?
【问题讨论】:
标签: android key message keypress
您可以从视图中处理关键事件,也可以为整个应用程序处理一般性事件:
从视图中处理 onKey:
public boolean onKey(View v, int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_ENTER:
/* This is a sample for handling the Enter button */
return true;
}
return false;
}
记得实现 OnKeyListener 并设置你的监听器YourView.setOnKeyListener(this);
第二种可能是:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_MENU:
/* Sample for handling the Menu button globally */
return true;
}
return false;
}
你也可以看看onKeyUp。
资源:http://developer.android.com/reference/android/view/View.html
在这里你可以看到一个包含所有KeyEvents的列表
【讨论】: