我有两个活动A和B。
- 启动活动A。
- 已开始活动 A --->活动 B
- 在 Backey 按下的活动 B 正在销毁并导航到 A。
我不想破坏活动 B,请在堆栈中维护以在再次从 A 导航到 B 时重复使用相同的活动。
实际:活动 B 正在创建 Web 视图中加载 URL,每次创建并重新加载 URL。
预期:它应该通过不创建来启动活动 A 到活动 B,并且不应再次重新加载。
试试这个解决方案
@Override
public void onBackPressed() {
this.startActivity(new Intent(YourActivity.this,ActivityA.class));
}
覆盖活动 B 中的onBackPressed()
,然后启动活动 A
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
它会将您的活动移至 Stack,并在您返回时保留在那里。有关更多详细信息,请看这里
从活动 B 中,下面的代码不会破坏活动 B 并导航到 A
@Override
public void onBackPressed() {
this.startActivity(new Intent(ActivityB.this,ActivityA.class));
}
从活动 A 导航到 B,在下面将标志设置为不会重新创建活动的意图。
setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT)
谢谢。