startActivityForResult内的startActivityForResult

Che*_*rot 5 android android-intent android-activity

如果我打电话startActivityForResult并且启动的活动也在调用startActivityForResult另一个活动,
那么第一个活动是否可能会停止?
有没有办法防止它发生?
我应该通过什么背景传递我创建的每个意图?

一些代码来计算过程

intent = new Intent(MainActivity.this, SettingsActivity.class);
startActivityForResult(intent, AbstractSettingsActivity.SETTINGS_ACTIVITY_REQUEST_CODE);

// this is inside the Settings activity
Intent intent = new Intent(getBaseContext(), SettingsTabsActivity.class);
startActivityForResult(intent, CUSTOMIZE_TAB_REQUEST_CODE);
// at this point i got ondstroy on main activity - main is not the root
Run Code Online (Sandbox Code Playgroud)

waq*_*lam 2

在任何情况下(无论是它startActivity还是startActivityForResult),当您开始一个新活动时,您的当前活动将通过引发其方法Activity进入停止onStop状态。这就是Android 的 Activity 生命周期的设计方式。它与上下文类型无关。

但是,如果您不想发生这种情况onStop,那么也许您可以尝试模拟预期的视图,Dialogs这将导致您的 Activity 达到其onPause状态。