在其onCreate方法中启动新活动后的上一个活动状态?

问题描述:

任何人都可以解释如果我执行此活动会发生什么? 我越来越奇怪的输出和应用程序挂起。 ` 公共类ComedyAct扩展AppCompatActivity {在其onCreate方法中启动新活动后的上一个活动状态?

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(new ProgressBar(this)); 

    startActivity(new Intent(this,secondact.class)); 

    Log.d("main","I am after start second act"); 
    int i=0; 
    while(i<10000); 

} 

@Override 
protected void onStart() { 
    super.onStart(); 
    int i=0; 
    while(i<10000); 
    Log.d("main","I am in start first act"); 
} 

@Override 
protected void onStop() { 
    super.onStop(); 
    int i=0; 
    while(i<10000); 
    Log.d("main","I am in stop first act"); 
} 

} `

注:凡downvoting,请执行程序和解释output.Atleast的理由给我downvote的原因。

+0

为什么不把调试点放在'while(i Raghunandan

+0

@Raghunandan我更感兴趣会发生什么,为什么会发生,如果我写这样的代码比单纯的输出。 –

+0

如果你使用调试器的帮手调试 – Raghunandan

我建议你阅读活动的生命周期...

当你开始另一项活动,该活动ComedyAct将处于停止状态,在onStart绝不会在这种情况下调用..

活动生命周期:

的OnCreate --->的OnStart --->的onResume

当另一个活动启动 那么首先的onPause ---->的onStop --->的onDestroy

什么时候第一次活动会恢复?

首先的的onCreate ----> --->在onStart ---->的onResume,如果活动被摧毁...

但如果该活动没有destroyed..then首先onRestart的---> onStart ---> OnResume,在这种情况下onCreate将永远不会被调用......

+0

请运行代码和ans。 Becoz它会给出意想不到的输出。解释输出。 –