Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中按下后退按钮时进入应用程序屏幕_Android_Start Activity_Onbackpressed - Fatal编程技术网

在android中按下后退按钮时进入应用程序屏幕

在android中按下后退按钮时进入应用程序屏幕,android,start-activity,onbackpressed,Android,Start Activity,Onbackpressed,我有一个android应用程序,当我按下“后退”按钮时,我的应用程序需要转到应用程序屏幕,因此我正在为此使用以下代码 @Override public void onBackPressed() { Intent i= new Intent(Intent.ACTION_ALL_APPS); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); i.addCategory(Intent.CATEGORY_HOME); startAc

我有一个android应用程序,当我按下“后退”按钮时,我的应用程序需要转到应用程序屏幕,因此我正在为此使用以下代码

@Override
public void onBackPressed()
 { 
    Intent i= new Intent(Intent.ACTION_ALL_APPS);
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    i.addCategory(Intent.CATEGORY_HOME);
    startActivity(i); 
}
但它不起作用,会说“不幸的是,您的应用程序已停止”

如果你想回到你的应用程序屏幕,你可以试试这个。我希望这会有帮助

   @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event)  { 
        if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { 
            // do something on back.
            Intent i = new Intent(Intent.ACTION_ALL_APPS); 
            i.addCategory(Intent.CATEGORY_HOME); 
            i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
            startActivity(i); 

           this.finish(); 
            return true; 
        } 

        return super.onKeyDown(keyCode, event); 
    } 

您可以使用下面的意图来实现这一点。此意图将启动用户定义的启动器应用程序

Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);    
或者,您也可以使用此单线解决方案:

moveTaskToBack(true);  // activity.moveTaskToBack(true)

当按下Home(主页)按钮时,它将起作用

@Hoo什么是logcat?对不起,我是初学者,看起来控制台是空的,当它崩溃时会显示错误。您想转到应用程序的第一个屏幕或bck上的上一个屏幕,请按?
moveTaskToBack(true)解决了我想要的问题,谢谢大家投票反对!!有些人英语很差,不能表达他们想要表达的东西。StackOverflow应该关注这些问题…你的帖子被否决的原因有很多。看@HamreenAhmad,这是我的荣幸:)