【问题标题】:Can I reuse an Activity in android?我可以在android中重用一个Activity吗?
【发布时间】:2026-01-31 03:20:06
【问题描述】:

我为我的英语提前道歉,我正在开发我的第一个应用程序,但我不知道如何继续。 我有一个注册事物的活动,我想提供修改该注册的选项。我考虑过重用注册活动来执行此操作,我的意思是,当您单击“修改”时,它会打开注册活动并填写所有字段,您可以修改任何您想要的内容(而不是像新注册活动那样使用空字段) ,然后进行不同的查询以更新 SQLite 中的记录等。 我不知道如何捕捉我正在调用该活动来做另一件事而不是注册。那可能吗?还是我应该为此创建一个新活动?

谢谢!!

【问题讨论】:

  • 不太清楚你在问什么,但你可以在intent 中传递一个布尔变量来启动活动,以传递启动活动的原因并使活动做出相应的反应.
  • 我应该为此使用标志吗?
  • 我的意思是:intent.putExtra("for_registration", false)...然后在您的活动中读取该数据

标签: android android-activity android-lifecycle activity-state


【解决方案1】:

是的,您可以重复使用它,例如:

Intent i = new Intent(RegistrationActivity.this, RegistrationActivity.class);
i.putExtra("id", someId);
startActivity(i);
finish();

记得调用 finish() 来从 backstack 中移除活动,这样 当您按回时,您不会返回相同的前一个实例 活动

然后用这个来获取id进行查询:

String id = getIntent().getStringExtra("id");

【讨论】:

    【解决方案2】:

    你可以使用:

    • 捆绑,在活动之间传递数据。

    • 从另一个类访问数据的静态变量

    • 使用包传递数据或使用静态变量,并在另一个 Activity 中重用来自先前 Activity 的布局文件或更改同一 Activity 中某些视图的可见性

    【讨论】:

      最近更新 更多