如何在没有调用onCreate()的情况下返回First活动

abh*_*hek 3 navigation android android-activity

我有3项活动.活动A,活动B,活动C.这是流程A-> B-> C. 现在我想从C.(即C-> A)来到活动A,而没有得到活动A的onCreate().

到目前为止,我的代码是:但它将调用ActivityA的onCreate().我想调用Restart().

Intent intent=new Intent(ActivityC.this,ActivityA.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
                finish(); 
Run Code Online (Sandbox Code Playgroud)

Vir*_*t18 7

两种情况:

  1. 如果你想保持其他活动,只想把A带到前面,只需使用意图标志FLAG_ACTIVITY_REORDER_TO_FRONT即可.

  2. 如果您不想清除所有活动并希望顶部的现有A实例,则使用意图标志FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_SINGLE_TOP.

注意:如果仅使用FLAG_ACTIVITY_CLEAR_TOP,则将调用onCreate.


Sri*_*nth 5

保留android:launchMode="singleTask"在活动申报时的清单中

具有 singleTask launchMode 的 Activity 只允许在系统中拥有一个实例。如果实例已经存在,我不会调用“onCreate”,而是调用“onNewIntent”方法。请参阅http://androidsrc.net/android-activity-launch-mode-example/以更好地了解启动模式。