我有两个活动A和B。
我不想破坏活动B,当我再次从A导航到B时,请保持堆栈状态以重用同一活动。
实际: 活动B正在oncreate的webview中加载URL,每次创建并重新加载URL。
预期: 它应该通过不创建来启动活动A到活动B,并且不应再次重新加载。
答案 0 :(得分:0)
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
它将把您的活动移至Stack,并在您返回时保留在那里。 有关更多详细信息,请查看here
答案 1 :(得分:0)
尝试此解决方案
@Override
public void onBackPressed() {
this.startActivity(new Intent(YourActivity.this,ActivityA.class));
}
覆盖ActivityB中的onBackPressed()
,然后启动活动A
答案 2 :(得分:0)
在活动B中,以下代码不会破坏活动B并导航至A
@Override
public void onBackPressed() {
this.startActivity(new Intent(ActivityB.this,ActivityA.class));
}
从活动A导航到B,将以下标志设置为Intent,这将不会重新创建活动。
setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT)
谢谢。