android – 如果对已创建的Activity调用startActivity()会发生什么?

前端之家收集整理的这篇文章主要介绍了android – 如果对已创建的Activity调用startActivity()会发生什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在我的其他Activity中使用新的Intent启动我的MainActivity.这两个活动位于同一个应用程序中,第二个活动实际上是从MainActivity启动的.所以场景是这样的:

>使用Intent创建MainActivity
> MainActivity启动SecondActivity(但MainActivity尚未销毁.它刚刚停止)
> SecondActivity使用新的Intent启动MainActivity(SecondActivity未关闭)

MainActivity未标记.我的意思是,清单中的Activity的启动模式没有设置(所以,它是默认的).

我想知道MainActivity的生命周期和意图会发生什么.

活动是否重新创建?是onCreate()调用吗?然后onCreate()调用两次,没有onDestory()?或者新创建了MainActivity,并且会有两个MainActivities?来自getIntent()的Intent会被覆盖吗?

我知道为singleTop活动调用了Activity.onNewIntent().那么在我的情况下onNewIntent()是不是被调用了?

提前致谢.

解决方法

Is the Activity re-created? Is onCreate() called? Then is onCreate()
called twice,

是,是,是的,因为活动的默认launchMode是“标准”.使用标准launchmode的活动将创建一个新实例多少次.

Will the Intent from getIntent() overwritten?

AFAIK,它仍然是同一个意图.

猜你在找的Android相关文章