Comment détruire une activité dans Android?

Pendant que l'application est en cours d'exécution, j'appuie sur le bouton HOME pour fermer l'application. Lorsque je lance l'application à nouveau, elle reprend la page affichée avant de cliquer sur ACCUEIL. Je souhaite que l'application commence par l'affichage initial. J'ai utilisé finish () pour terminer l'activité, mais ça ne fonctionne pas. Aucune suggestion?

  • Où puis-je trouver des statistiques sur la distribution Android (nombre de périphériques) par processeur?
  • Devrais-je utiliser AppCompat v7 si minsdk est 14
  • Meilleures options que le backport ICS HttpResponseCache
  • Comment enregistrer un fichier audio dans Android
  • TimePicker dans PreferenceScreen
  • Comment remplacer le comportement de la touche <ENTER> du clavier virtuel dans Android
  • 3 Solutions collect form web for “Comment détruire une activité dans Android?”

    Très probablement, vous avez plusieurs cas de la même activité. Pour résoudre ce type de problèmes, créez votre propre classe d'activité parent, par exemple MyRootActivity, qui contiendra une liste statique de toutes les activités disponibles / vivantes:

    public class MyRootActivity extends Activity { private static final String TAG=MyRootActivity.class.getName(); private static ArrayList<Activity> activities=new ArrayList<Activity>(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); activities.add(this); } @Override public void onDestroy() { super.onDestroy(); activities.remove(this); } public static void finishAll() { for(Activity activity:activities) activity.finish(); } } 

    Pour cela, toutes vos activités doivent être des enfants de MyRootActivity.

    Ensuite, lorsque vous êtes sûr que vous fermez votre application, appelez simplement MyRootActivity.finishAll ();

    Créez un objet d'activité statique dont l'activité se termine sur une autre activité et attribuez une activité dans ce cas, vous pouvez ajouter d'autres activités

     public class demoActivity extends AppCompatActivity { public static Activity self_intent; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.demo_activity); selfintent=this; } //Other functions-------------- } 

    Faire le même pour d'autres activités

    Sur d'autres

     public class finishingActivity extends AppCompatActivity { public Button activityCloseBtn; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.finishing_activity); activityCloseBtn= (Button) view.findViewById(R.id.activity_close_btn); activityCloseBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { demoActivity.selfintent.finish(); //for finish demoActivityactivity //for other activities Activity.selfintent.finish(); finish(); //for finish current activity } }); 

    Essayez d'appeler super.onPause() abord et plus tard call finish() dans votre onPause()

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.