跳过活动而不重新加载它然后返回它

时间:2017-03-24 17:02:55

标签: android

活动A称我为活动B和C.

    Intent intent_mapa = new Intent(getApplicationContext(), ActivityB.class);
    intent_mapa.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    startActivity(intent_mapa);

    Intent intent = new Intent(getApplicationContext(), ActivityC.class);
    startActivity(intent);

然后C叫我活动D.

     Intent intent = new Intent(getApplicationContext(), ActivityD.class);
        startActivity(intent);

Activity D然后在不重新加载WebView的情况下调用Activity B,Activity B有一个WebView,我不希望重新加载url。

    Intent intent = new Intent(getApplicationContext(), ActivityB.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    startActivity(intent);

当我回到活动D时,我在没有关闭D的情况下调用活动C,如果我想重新打开活动D,我不应该刷新活动D.

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {


    Intent intent = new Intent(getApplicationContext(), ActivityD.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    startActivity(intent);
    return false;
}

1 个答案:

答案 0 :(得分:0)

方式,Android'打开'活动是(正如您在代码中看到的)通过Intents。那么你实际上用startActivity(Intent ...)做的是,你告诉Android你有意图运行指定的Activity。现在它取决于标志(FLAG_ACTIVITY _...)Android如何处理你的意图。另请参阅有关Tasks and Back Stack的官方文档。