观心静

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

方法一:

在activity中重写onBackPressed()方法 ,注意此处一定要注释或者删除 super.onBackPressed();方法

 @Override
    public void onBackPressed() {
//        super.onBackPressed();
        Intent home = new Intent(Intent.ACTION_MAIN);
        home.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        home.addCategory(Intent.CATEGORY_HOME);
        startActivity(home);
    }

 方法二:

个人更推荐使用这个方法,activity上提供的原始api。使用的时候一样需要注释 super.onBackPressed();

 

/**
     * 重新返回键功能,将返回键功能替换成home功能
     */
    @Override
    public void onBackPressed() {
//        super.onBackPressed();
        moveTaskToBack(true);
    }

 

参数说明:
参数为false——代表只有当前activity是task根,指应用启动的第一个activity时,才有效;
参数为true——则忽略这个限制,任何activity都可以有效。
说明:判断Activity是否是task根,Activity本身给出了相关方法:isTaskRoot()

 

posted on 2019-01-29 16:21  观心静  阅读(1804)  评论(0)    收藏  举报