安卓开发如何获取键值?

2015-6-10 10:02:30      点击:

在监听物理键时,可以用onKeyDown方法,Activity已经自己有KeyEvent.Callback这个接口了,因为项目有使用Fragment,Fragment没有这个接口,事实上,即使你自己implements了KeyEvent.Callback,它自己也不会调用。但是FragmentActivity是有这个接口的,所以我们只要在Activity中实现相关逻辑即可。如果你需要在特定的Fragment监听的话可以结合使用FragmentManager.getBackStackEntryCount()。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { //按下的如果是BACK,同时没有重复 //do something here return true;
   } return super.onKeyDown(keyCode, event);
}