在我传递给另一个 Intent 后 Intents 是否被杀死 Android

Does the Intents get killed after i pass to another Intent Android

我正在开发一个 android 应用程序,在该应用程序中我有几个按钮可以让用户传递给另一个 activity。现在我在这个 Intents 之间进行转换的方式如下所示:

    Intent intent = new Intent(this,user_area.class);
    intent.putExtra("user",user_name.getText().toString());
    startActivity(intent);

根据以上内容,我开始了一个 activity,然后 activity 我将使用以下代码返回 MainActivity

    Intent intent = new Intent(context,MainActivity.class);
    startActivity(intent);

但我怀疑这会导致内存被过度使用,因为我实际上并没有回到应用程序启动时创建的 Main Activity,我只是创建另一个 MainActivity 我的实例猜测。这真的和我想的一样吗?如果是这样,我怎样才能回到一开始创建的 activity,或者如果我不能做这样的事情,我怎样才能让应用程序让以前的 activity去?

在您的解决方案中,您只需按下后退按钮,您将首先返回 activity。 如果你想关闭它并在打开新实例后就像你在第二个 activity 中所做的那样,只需添加

finish();

结束时
Intent intent = new Intent(this,user_area.class);
intent.putExtra("user",user_name.getText().toString());
startActivity(intent);

intent 传递给 startActivity() 将创建 activity 的新实例并将其添加到堆栈的前面。所以:

Intent intent = new Intent(context,MainActivity.class);
startActivity(intent);

基本上是要求创建一个新实例。如果您想返回到当前 activity 之前的 activity,请调用:

finish();

或者,

super.onBackPressed();

你只需要调用finish();方法

Intent intent = new Intent(this, DestinationActivity.class);
startActivity(intent);
finish();