基本上我需要的是每次调用Activity
将实例移到前面而不破坏其他活动时重新创建一个startActivity()
。
例如,如果我有活动堆栈
A-> B-> C-> D
从D我想打开B,我目前使用的标志是FLAG_ACTIVITY_REORDER_TO_FRONT
,它将Activity堆栈保持在这种状态:A->C->D->B
。但是,活动堆栈中的顺序是完美的,使用该标志不会重新创建Activity
并调用onNewIntent()
。
因为Activity
的复杂性我不想重构很多东西,我想要的是从头开始重新创建B(必须调用onCreate()
)而不是执行我的逻辑onNewIntent()
方法。活动堆栈应具有与使用FLAG_ACTIVITY_REORDER_TO_FRONT
时相同的状态。任何的想法?非常感谢您的帮助。 :)
答案 0 :(得分:0)
如果您的所有工作都在onCreate()
中进行,并且您希望在onNewIntent()
内使用相同的内容,那么您可以通过一个简单的重复因子来实现。您的所有代码都在setupActivity()
电话中。
public void onCreate (Bundle savedInstanceStateF)
{
super.onCreate (savedInstanceStateF);
setupActivity();
}
public void onNewIntent(Intent intentF)
{
super.onNewIntent(intentF);
setupActivity();
}