我知道早些时候已经问过here& here too。他们没有得到适当的回答(或根本没有得到回答)。但是,我不知道为什么moveTaskToBack(true);
总是对我说谎。可以有人告诉我为什么以及如何解决这个问题?提前谢谢。
public void onBackPressed() {
boolean r= moveTaskToBack(true);
//r is false !! using API LEVEL 8
}
注意:我调用它的活动是Activity
中包含的子tabActivity
,而且 MAIN 或 LAUNCHER 活动。我不知道这是否有所作为。
修改 因此应用程序不会转到后台。我希望它转到后台,就像硬件HOME被按下一样
答案 0 :(得分:8)
我不知道为什么moveTaskToBack(true)
会为您返回false
。也许你的清单中有些奇怪的东西?无论如何,你可以这样做来调出主屏幕:
Intent i = new Intent();
i.setAction(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
this.startActivity(i);
但是,请注意this message:
“您无法在Home键上模拟按下。” - Roman Guy,Android框架工程师
我不确定我的建议代码(我在与Roman的声明相同的帖子中找到并且似乎有效)的方格如何。
答案 1 :(得分:0)
我遇到了类似的问题(一个包含在tabActivity中的子Activity ),当你在子活动中调用moveTaskToBack(true)时,它不起作用,而它适用于父活动。您可以在子活动中调用moveTaskToBack(true),如下所示:
DoFilter()
答案 2 :(得分:0)
只需写下:
@Override
public void onBackPressed() {
moveTaskToBack(true);
// super.onBackPressed();
}