android 关于HOME键

来源:互联网 发布:4g网络不稳定怎么设置 编辑:程序博客网 时间:2024/05/18 02:48

 

模拟HOME键

public boolean onKeyDown(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    if(keyCode == KeyEvent.KEYCODE_BACK){
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);// 注意
        intent.addCategory(Intent.CATEGORY_HOME);
        this.startActivity(intent);
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

特别注意 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 这句,一定要加上,因为Activity 的 launchMode 默认是以 standard 执行的,如果不添加这个标记则 会创建新的Activity 并放在与当前Activity相同的Task中。以下是 FLAG_ACTIVITY_NEW_TASK 的说明

// 屏蔽Home键
        // @Override
        // public void onAttachedToWindow() {
        // this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
        // super.onAttachedToWindow();
        // }

原创粉丝点击