moveTaskToback退后台的用法及作用_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > moveTaskToback退后台的用法及作用

moveTaskToback退后台的用法及作用

 2017/5/12 5:30:36  ganchuanpu  程序员俱乐部  我要评论(0)
  • 摘要:1方法:publicbooleanmoveTaskToBack(booleannonRoot)activity里有这个方法,参数说明如下:nonRoot=false→仅当activity为task根(即首个activity例如启动activity之类的)时才生效nonRoot=true→忽略上面的限制这个方法不会改变task中的activity中的顺序,效果基本等同于home键应用场景:比如有些activity诸如引导图之类的,用户在按返回键的时候你并不希望退出(默认就finish了)
  • 标签:用法

1

方法:public boolean moveTaskToBack(boolean nonRoot)

activity里有这个方法,参数说明如下:

nonRoot=false→ 仅当activity为task根(即首个activity例如启动activity之类的)时才生效

nonRoot=true→ 忽略上面的限制

这个方法不会改变task中的activity中的顺序,效果基本等同于home键

应用场景:

比如有些activity诸如引导图之类的,用户在按返回键的时候你并不希望退出(默认就finish了),而是只希望置后台,就可以调这个方法

 

2

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,这就是退到后台的功能。

 

3

class="brush:java;gutter:true;">@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
        moveTaskToBack(true);
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

  

上一篇: 报告称乐视网曾挪用版权费用发工资 下一篇: 没有下一篇了!
发表评论
用户名: 匿名