2017-04-14 118 views
0

在我的android应用程序中,我在finish()之后调用了startActivity方法,但仍然能够移动到下一个活动。我想知道这是怎么发生不应该被执行前的startActivity 这里是一个示例代码在startActivity方法之前调用finish()时,发生活动转换

Intent N=new Intent(A.this,B.class); 
    finish(); 
    startActivity(N); 

我能够移动到活动B没有任何问题,也活性A被破坏

活动被销毁
+0

检查此线程 - http://stackoverflow.com/a/4185897/7235049 – tahsinRupam

+0

也阅读[this](http://stackoverflow.com/a/23778611/3921977)答案的其他信息。 –

回答

1

这取决于从那里,你叫的onCreate()将调用的onDestroy()

完成()在在onStart(完成()

结束())将调用onCreate(),onStart(),onStop(),onDestroy()

finish()onResume()将调用的onCreate(),在onStart()的onResume(),在onPause()的onStop()的onDestroy()

您可以在Android生命周期看:

https://developer.android.com/guide/components/activities/activity-lifecycle.html

0

我不认为finish()与返回有相同的效果(否则我们会得到unreachable statement错误),所以其余的流程仍然被调用。

More info.

相关问题