Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.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_Exit_Restart - Fatal编程技术网

Android 退出应用程序后,如何让我的应用程序启动到仪表板?

Android 退出应用程序后,如何让我的应用程序启动到仪表板?,android,exit,restart,Android,Exit,Restart,我的一个应用程序有问题,我不知道该怎么解决。我是Android新手,不懂java 该应用程序由多个包含列表的页面组成,所有页面都有一个微调器在这些页面之间导航。您在微调器中选择in项,应用程序将打开该页面。除了在页面之间跳跃外,微调器中还有一个“退出应用程序”选项 跳页没问题。我遇到的问题是“退出应用程序”代码。当我通过按设备上的home键退出应用程序,或点击exit app(从微调器)然后重新启动应用程序时,它不会在仪表板上打开,而是在我上次查看的页面上打开。要解决这个问题,我需要长按设备的h

我的一个应用程序有问题,我不知道该怎么解决。我是Android新手,不懂java

该应用程序由多个包含列表的页面组成,所有页面都有一个微调器在这些页面之间导航。您在微调器中选择in项,应用程序将打开该页面。除了在页面之间跳跃外,微调器中还有一个“退出应用程序”选项

跳页没问题。我遇到的问题是“退出应用程序”代码。当我通过按设备上的home键退出应用程序,或点击exit app(从微调器)然后重新启动应用程序时,它不会在仪表板上打开,而是在我上次查看的页面上打开。要解决这个问题,我需要长按设备的home键,然后从最近使用的列表中滑动应用程序

有没有一种方法可以让我在按设备上的home键退出应用程序时,或者在微调器中点击exit app,然后重新启动应用程序时,它会在仪表板上打开

有人能帮忙吗

谢谢

字符串代码

<string-array name="TheList">
   <item>Tap Here For List…</item>
   <item>Cheese</item>
   <item>Planets</item>
   <item>Cars</item>
   <item><b>Back To Dashboard…</b></item>
   <item><b>EXIT APP</item>
</string-array>

点击此处查看列表…
干酪
行星
汽车
回到仪表板…
退出应用程序
下面代码中的案例编号(1-4)是使用微调器项目选择打开的页面

案例5退出应用程序。我假设代码中有一个错误,阻止应用程序在仪表板上重新启动

java代码

package com.example.acer.MyKitList;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Spinner;

public class Carrying extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.page1);


   // Spinner element & Spinner click listener
   Spinner Spinner = (Spinner) findViewById(R.id.Spinner1);

   Spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {


       @Override
       public void onItemSelected(AdapterView<?> arg0, View view, int position, long row_id) {

      switch (position) {
          case 1:
         Intent a = new Intent(Dashboard.this, Cheese.class);
         startActivity(a);
         finish();
         break;
          case 2:
         Intent b = new Intent(Dashboard.this, Planets.class);
         startActivity(b);
         finish();
         break;
          case 3:
         Intent c = new Intent(Dashboard.this, Cars.class);
         startActivity(c);
         finish();
         break;
          case 4:
         Intent d = new Intent(Dashboard.this, Dashboard.class);
         startActivity(d);
         finish();
         break;

          case 5:
         Intent intent = new Intent(Intent.ACTION_MAIN);
         intent.addCategory(Intent.CATEGORY_HOME);
         intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
         startActivity(intent);
         System.exit(0);
         finish();

      }
       }

       @Override
       public void onNothingSelected(AdapterView<?> arg0) {
       }
   });
    }

    @Override
    public void onBackPressed() {
   finish();
    }
}
package com.example.acer.MyKitList;
导入android.app.Activity;
导入android.content.Intent;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.Spinner;
公共课堂活动{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.page1);
//微调器元素和微调器单击侦听器
微调器微调器=(微调器)findViewById(R.id.Spinner1);
Spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView arg0、视图、整型位置、长行\u id){
开关(位置){
案例1:
意图a=新意图(Dashboard.this、Cheese.class);
星触觉(a);
完成();
打破
案例2:
意图b=新意图(Dashboard.this,Planets.class);
星触觉(b);
完成();
打破
案例3:
意图c=新意图(仪表板.this,Cars.class);
星触觉(c);
完成();
打破
案例4:
意图d=新意图(Dashboard.this、Dashboard.class);
星触觉(d);
完成();
打破
案例5:
意向意向=新意向(意向.行动\主要);
intent.addCategory(intent.CATEGORY_HOME);
intent.setFlags(intent.FLAG\u活动\u清除\u任务);
星触觉(意向);
系统出口(0);
完成();
}
}
@凌驾
未选择公共无效(AdapterView arg0){
}
});
}
@凌驾
public void onBackPressed(){
完成();
}
}
将此代码段放入所有类中 这将很难解决这个问题

答案是:


这是活动的默认生命周期。当您按下“主页”按钮时,“活动”将再次进入暂停状态,打开它将导致“恢复”。我认为你不应该搞砸默认行为。我是Android新手,不懂java。-你为什么不先获得一些经验呢?如果您不理解Java,您将走不远,正如我在上面所说的,您不应该弄乱活动生命周期。你可以做的是处理退出应用程序按钮。阅读你会明白的。谢谢ADM。我已经读到安卓试图阻止人们使用“退出按钮”,因为这不是好的编码礼节或其他什么。也谢谢你的链接。我在那里找到了解决办法。我只漏掉了几行。不,多亏了蒂姆,但你确实因为没有帮助和居高临下而获奖。做得好!我想知道您是否从一开始就完全了解java,并且没有犯错误。。。你是否从来没有在一些不太有效的事情上寻求过帮助?无所不知一定很好。你能做的就是说,“很好的尝试,你已经得到了大部分代码,但是你错过了这些…”这样在你的帮助下,我会学到一些经验。啊,嘲弄…谢谢水4。我从ADM提供的链接中只漏掉了几行,其中包括您的-Intent a=newintent(context,Dashboard.class)@既然你的问题已经解决了,我将不胜感激&请接受答案
@Override
protected void onResume() {
    super.onResume();
   //Start Dashboard Activity here
     Intent a = new Intent(context, Dashboard.class);
     startActivity(a);
     finish();
     }
}
case 5:
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
System.exit(0);