在网上搜,发现有部分人提出的是如下代码:

//   Intent intent = new Intent();

//   intent.setAction("android.intent.action.MAIN");

//   intent.addCategory("android.intent.category.HOME");

//   startActivity(intent);

此代码实际是跳转到系统桌面。实际只需下述关键一行代码

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);

}

Move the task containing this activity to the back of the activity stack. The activity's order within the task is unchanged.

Parameters:

nonRoot If false then this only works if the activity is the root of a task; if true it will work for any activity in a task.

Returns:

If the task was moved (or it was already at the back) true is returned, else false.

分析:nonRoot“非根”,如果参数为true 则“是 -非根”,也就是如果当前界面不是应用程序的根界面;如果是false,则

“非-非根”,双重否定为肯定,“是根”,也就是如果当前界面是应用程序的根界面。上述示例代码中,当前界面并不是应用程序的根界面,所以传入的是true.  执行效果和微信的效果一样。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐