在我传递给另一个 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();
我正在开发一个 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();