Perché onResume() chiamato quando un’attività inizia?

Ho un app dove, dopo il segno in esso si getta nella schermata di benvenuto. Ho messo un Brindisi per vedere quando onResume incendi, ma si attivano anche dopo onCreate

protected void onResume(){
    super.onResume();
    Database openHelper = new Database(this);//create new Database to take advantage of the SQLiteOpenHelper class
    myDB2 = openHelper.getReadableDatabase(); //or getWritableDatabase();
    myDB2=SQLiteDatabase.openDatabase("data/data/com.example.login2/databases/aeglea", null, SQLiteDatabase.OPEN_READONLY);//set myDB to aeglea
         cur = fetchOption("SELECT * FROM user_login");//use above to execute SQL query
         msg.setText("Username: "+cur.getString(cur.getColumnIndex("username"))
                     +"\nFull name: "+cur.getString(cur.getColumnIndex("name"))+" "+cur.getString(cur.getColumnIndex("last"))
                     +"\ne-mail: "+cur.getString(cur.getColumnIndex("email"))
                     +"\nAeglea id:"+cur.getString(cur.getColumnIndex("uid")));

         Toast.makeText(getApplicationContext(), "RESUMED", Toast.LENGTH_SHORT).show();
}

Proviene da:

 //create new intent
 Intent log = new Intent(getApplicationContext(), Welcome.class);
 //Close all views before launching logged
  log.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  startActivity(log);
   //Close Login Screen
   finish();

Sono sconcertato. Si prega di offrire una certa esperienza qui

  • onPause o onResume?
  • Scusate vorrei modificare la mia Domanda

 

3 Replies
  1. 20

    Beh, io non capisco molto bene ciò che si sta cercando di chiedere o che cosa è la domanda qui. MA io ti consiglio di leggere il “Android Attività Del Ciclo Di Vita” e che sarà chiaro che molti dei vostri dubbi causa in android non è come le altre lingue o piattaforme.

    Perché onResume() chiamato quando un'attività inizia?

    Nota: OnResume è chiamata ogni volta che l’attività è “visibile”, così come molte volte come la vostra attività diventa visibile, lo stesso numero di volte che il tuo metodo verrà chiamato. Se si desidera solo per chiamare il metodo la prima volta, poi OnCreate è quello che stai cercando.

    • Grazie la nota ha reso più chiaro per me
    • benvenuto pietro, spero che questo possa aiutare in futuro.
  2. 6

    Si prega di prendere uno sguardo all’attività del ciclo di vita dello stato grafico.

    Questo è l’ordine i metodi vengono chiamati:

    1. onCreate()
    2. onStart()
    3. onResume()
    4. -> l’attività è in esecuzione

    http://developer.android.com/reference/android/app/Activity.html#ProcessLifecycle

    • Sì ho assunto come molto, ma ho pensato che onResume() è stata attivata quando onPause ha sparato.
    • E ‘ tutto bene. Alcune cose sono solo diversi su Android, ma quando li conosci ti piacerà. All’inizio sono rimasto scioccato quando ho saputo che onActivityResult(..) è chiamato prima di onResume(..), nel caso in cui lo si utilizza regolarmente.
  3. 2

    onResume dopo onCreate è normale Attività Del Ciclo Di Vita

    La ragione si ottiene onStart e onResume chiamato anche il primo lancio è che rende la scrittura di codice più facile.

    Si può supporre che, prima del ritorno alla onResume vi saranno mostrati onPause chiamato, dato che non c’è modo di uscire dal “ripreso” stato senza onPause. Il comportamento può essere utilizzato per inizializzare le cose in onResume e la de-inizializzare senza ulteriore controllo in onPause. Se non si può essere sicuri che onResume è stato chiamato all’inizio che tutto il regime delle pause.

    In una nota a margine: non accedere al database da qualsiasi onXYZ metodi dal momento che blocchi il thread dell’interfaccia utente che, invece, dovrebbe disegnare l’interfaccia utente e di gestire gli eventi di tocco.

Lascia un commento