您的位置:首页 > 移动开发 > Android开发

Android 实现Back按键的三种方法

2016-06-28 15:02 495 查看
方法一:重写onBackPressed方法

@Override
public void onBackPressed() {
// do something what you want
super.onBackPressed();
} 方法二:重写dispatchKeyEvent
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == KeyEvent.ACTION_DOWN
&& event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
//do something what you want
return true;//返回true,把事件消费掉,不会继续调用onBackPressed
}
return super.dispatchKeyEvent(event);
}
方法三:使用测试框架Instrumentation,模拟任意键按下动作,注意的是该方法不能在主线程中使用,只能开启新线程,带来的问题就是反应速度较慢,项目中不建议使用。

调用actionKey(KeyEvent.KEYCODE_BACK);产生back键单击效果
/**
* 模拟键盘事件方法
* @param keyCode
*/
public void actionKey(final int keyCode) {
new Thread () {
public void run () {
try {
Instrumentation inst=new Instrumentation();
inst.sendKeyDownUpSync(keyCode);
} catch(Exception e) {
e.printStackTrace();                    }
}
}.start();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android back按键