Diferença entre o oncreato() e o onStart()? [duplicado]
possível duplicado:
ciclo de vida da Atividade Android-diferença entre onPause() e OnStop()
estava a pensar - Qual é a diferença entre onCreate()
e onStart()
Métodos?
acho que onStart()
é um método redundante. onCreate()
será sempre chamado (pelo menos nos meus dois últimos projectos).
2 answers
Onde
***onCreate()***
Chamada quando a actividade é criada pela primeira vez. Aqui é onde você deve fazer toda a sua configuração estática normal: criar vistas, ligar dados para listas, etc. Este método também lhe fornece um pacote contendo o estado previamente congelado da atividade, se houve um. Sempre seguido por onStart ().
***onStart()***
Chamado quando a actividade está a tornar-se visível para o utilizador. Seguido de onResume () se a actividade vem para o primeiro plano, ou onStop() se ele se torna escondido.
E você pode escrever sua classe simples para dar uma olhada quando estes métodos chamam
public class TestActivity extends Activity {
/** Called when the activity is first created. */
private final static String TAG = "TestActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.i(TAG, "On Create .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onDestroy()
*/
@Override
protected void onDestroy() {
super.onDestroy();
Log.i(TAG, "On Destroy .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onPause()
*/
@Override
protected void onPause() {
super.onPause();
Log.i(TAG, "On Pause .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onRestart()
*/
@Override
protected void onRestart() {
super.onRestart();
Log.i(TAG, "On Restart .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onResume()
*/
@Override
protected void onResume() {
super.onResume();
Log.i(TAG, "On Resume .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onStart()
*/
@Override
protected void onStart() {
super.onStart();
Log.i(TAG, "On Start .....");
}
/* (non-Javadoc)
* @see android.app.Activity#onStop()
*/
@Override
protected void onStop() {
super.onStop();
Log.i(TAG, "On Stop .....");
}
}
Espero que isto esclareça a tua confusão.
E dê uma olhada aqui para mais detalhes.
métodos do ciclo de vida em detalhes é um bom exemplo e aplicação demo, que é um artigo muito bom para entender o ciclo de vida.
onCreate()
o método é chamado quando a atividade é criada, e é chamado apenas uma vez em todo o ciclo de vida da atividade.
onde onStart()
é chamado quando a actividade é interrompida... Quero dizer que foi para segundo plano e o seu método é chamado pelo so. onStart()
pode ser chamado várias vezes no ciclo de vida da actividade.Mais detalhes aqui