0

我的项目 Connect+Details 和 Menu 中有 2 项主要活动。在我将第一个活动切换到第二个活动之后,一切顺利。问题从“菜单”返回到“连接+详细信息”开始。

当我使用后退键在第二个活动之间切换并返回第一个活动时,一切顺利。

当我使用此代码时问题开始:

Intent myIntent = new Intent(Menu.this, ConnectActivity.class);
startActivity(myIntent);

我确实回到了“连接+详细信息”,但该活动中的每个细节都丢失了。

我的问题很简单,我怎样才能回到预览活动并仍然拥有该活动中使用的详细信息。

编辑:即使我在第 4 次、第 5 次活动中也是如此,所以finish()对我没有帮助。

4

2 回答 2

0

您可能希望将数据保存在数据库中SharedPreferences或数据库中,然后使用保存的数据重新填充您的Activity. 您可以在离开时使用SharedPreferences保存一对,即使您的应用程序关闭,这也会持续存在。key/valueConnect Activity

如果要存储大量数据,那么您可以考虑使用SQLite DB。设置和使用这可能有点棘手,但如果您要存储大量数据,这可能是值得的……尤其是对于不同的用户而言。

Activity当您离开程序时,这两个选项都会保留您的数据。您也可以使用static Array前两个选项中的一个,但可能会更适合您。

Storage Options Docs提供了一些不错的示例来帮助您入门,尤其是当您决定 Shared Preferences 对您有用时。

编辑

除非有所改变,否则您不能将可序列化对象存储在SharedPreferences. 但这是一个 SO 链接,讨论将它们保存到文件并从那里读取。也许这会对你有所帮助。

于 2013-04-01T18:13:05.247 回答
0

不要使用 Intent 从 'Menu' 移动到 'Connect+Details' 而是调用 finish(); 从中

仅在头等舱使用意图移动到第二个,即;“连接+详细信息”到“菜单”

不要在 Connect+Details 中调用 finish()

于 2013-04-01T18:36:50.063 回答