美文网首页
android按下返回键,将应用退到后台

android按下返回键,将应用退到后台

作者: 精巧的中级星光 | 来源:发表于2018-04-27 14:45 被阅读0次

    内容原文:https://blog.csdn.net/li15225271052/article/details/62884597

    方式一

    @Override  
        public boolean onKeyDown(int keyCode, KeyEvent event) {  
            if (keyCode == KeyEvent.KEYCODE_BACK) {  
                moveTaskToBack(false);  
                return true;  
            }  
            return super.onKeyDown(keyCode, event);  
        }  
    

    方式二

        @Override
        public void onBackPressed() {
            moveTaskToBack(false);
    //        super.onBackPressed(); //注释super,拦截返回键功能
        }
    

    里面的moveTaskToBack()是关键。

    moveTaskToBack()方法:在activity中调用 moveTaskToBack (boolean nonRoot)方法即可将activity 退到后台,注意不是finish()退出。
    参数说明:
    参数为false——代表只有当前activity是task根,指应用启动的第一个activity时,才有效;
    参数为true——则忽略这个限制,任何activity都可以有效。
    说明:判断Activity是否是task根,Activity本身给出了相关方法:isTaskRoot()

    解释下moveTaskToBack调用后,task中activity的顺序不会发生变化,例如A启动B,B中调用此方法退到后台,重新启动应用会调用B中的onRestart-onStart-onResume方法,不会重新调用onCreate,而且在B中按下back键返回的还是A,这就是退到后台的功能。

    其实就是和home的效果差不多了

    相关文章

      网友评论

          本文标题:android按下返回键,将应用退到后台

          本文链接:https://www.haomeiwen.com/subject/abwblftx.html