所以,我的应用程序有5个活动:A,B,C,D,E。A是启动(启动器)活动,在启动后永远不会再被调用。启动后,B被调用并作为Home活动。 B,C,D,E全部通过Intent.FLAG_ACTIVITY_REORDER_TO_FRONT调用,以便通过onNewIntent()重用和更新一个实例。有用。我对用户体验感到满意。
这是我的问题。我希望B(在启动时)的第一个实例作为根任务。换句话说,如果连续按下后退按钮直到退出应用程序,我希望B的第一个实例成为用户看到的最后一个屏幕。 B的所有其他实例应该是"再循环"通常使用Intent.FLAG_ACTIVITY_REORDER_TO_FRONT。
我很确定我可以做一个独特的活动(称之为B2)并完成这个,有更好的方法吗?
答案 0 :(得分:0)
您可以使用
Intent cActivity = new Intent(BActivity.this,CActivity.class);
cActivity.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(cActivity);
设置Intent.FLAG_ACTIVITY_NEW_TASK
将保存您的B Activity的实例,并将您的活动C作为新任务打开。或者你可以在不设置任何标志的情况下致电startActivity()
。