Andare allo schermo principale a livello di programmazione

Voglio andare alla schermata iniziale in modo programmato in Android quando l'utente fa clic sul button. Come si può fare?

  • OutOfMemory: ricicla le immagini
  • android model esempi di presentazione / controller
  • FileProvider non funziona con la camera
  • Come aggiornare un GridView?
  • Come posso assicurare la compatibilità tra i livelli di API Android per RotationVector?
  • come convertire il valore RGB in valore esadecimale con alpha like (0xFFFFFFFF)?
  • Android: Immagine di carico di Picasso non rioutput. come mostrare il messaggio di errore
  • Android setOnClickListener non funziona
  • sendUserActionEvent () è nullo
  • Come modificare il fontSize in un WebView Android?
  • Come get la velocità di scorrimento su un ListView?
  • Firebase ServerValue.TIMESTAMP negli oggetti dei templates di dati Java
  • 5 Solutions collect form web for “Andare allo schermo principale a livello di programmazione”

    Puoi farlo attraverso un intento .

    Intent startMain = new Intent(Intent.ACTION_MAIN); startMain.addCategory(Intent.CATEGORY_HOME); startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(startMain); 

    Questo intento avvia l'applicazione di avvio che l'utente ha definito. Fai attenzione a questo perché questo sarà come se la tua applicazione si è schiantata se l'utente non lo aspetta.

    Se vuoi creare un button di output dalla tua app, legga questo articolo su tasti di output in Android

    La risposta di Janusz è ottima.

    L'unica cosa che voglio aggiungere, che è un po 'troppo a lungo per un commento, è che si può andare alla schermata iniziale senza avere un riferimento all'attività corrente.

    Il codice di Janusz deve essere chiamato da un'attività o un frammento a causa di startActivity() ,

    Per aggirare questo problema, è ansible memorizzare un riferimento statico alle tue applicazioni Context nel file dell'applicazione:

     public class YourApplication extends Application { private static Context mAppContext; public void onCreate() { super.onCreate(); ... YourApplication.mAppContext = getApplicationContext(); } public static Context getContext() { return mAppContext; } } 

    Ora puoi submit l'utente alla schermata iniziale del dispositivo da qualsiasi class dell'applicazione, non solo Attività, frammenti o altre classi con un riferimento all'attività corrente (puoi decidere se è una cosa buona o ctriggers):

     Intent startMain = new Intent(Intent.ACTION_MAIN); startMain.addCategory(Intent.CATEGORY_HOME); startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); YourApplication.getContext().startActivity(startMain); 

    Una sola soluzione

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

    si comporterà come button Home viene premuto

    Dallo sviluppatore di Android

    Ecco alcuni esempi di altre operazioni che puoi specificare come intenzioni utilizzando questi parametri aggiuntivi:

     * ACTION_MAIN with category CATEGORY_HOME -- Launch the home screen. 

    So che questo è un po 'tardi, ma ho anche incontrato lo stesso problema e qui è come ho risolto. Tornando alla tua attività di MainActivity è necessario aggiungere flag dall'attività che esce

      final Intent mainActivity = new Intent(this, MainActivity.class); mainActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); mainActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); 

    Ora, quando hai premuto il tasto indietro come MainActivity quello attivo, andrà alla schermata iniziale.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.