【问题标题】:Save and Store Activity in Android [duplicate]在Android中保存和存储活动[重复]
【发布时间】:2025-11-30 01:15:02
【问题描述】:

我正在 Android Studio 中开发一个应用程序,并想制作一个收藏夹页面。为此,我希望用户能够将活动保存到收藏夹中,并且当从主页打开收藏夹页面时,用户可以查看启动此活动的按钮。

我查找了许多其他类似的问题,但没有一个适合我的具体问题。

我查看了不同的可能性,例如 SharedPreferences、ToggleButton 等,但没有一个我可以开始工作。

非常感谢您的帮助。

非常感谢您。

【问题讨论】:

  • 将类名存储在 sharedpreferences 中,它是一个字符串,所以很简单。 Activity.class.getName() 稍后您可以使用该名称引用该类并启动活动
  • 听起来不错,但我真的不熟悉 SharedPreferences,因为我从来没有使用过它,直到尝试它并没有那么好,你能以什么方式帮助代码应该请为此而写?
  • 那最好熟悉一下。只是谷歌如何使用它。这很容易
  • 它确实是您必须熟悉的东西,因为它经常被使用。

标签: java android android-studio android-activity


【解决方案1】:

也许你可以创建一个 HashMap 的静态对象并将最喜欢的活动保存到这个对象中,然后可以从中检索活动。像这样。

这个 HashMap 对象可以保存在应用程序类中,这样您就可以从应用程序的任何地方访问用户最喜欢的活动列表。

private static final Map<String, Class> favActionMap;
   favActionMap= new HashMap<>();
        favActionMap.put("FAV_1", AddFixtureActivity.class);
        favActionMap.put("FAV_2", AddSwitchActivity.class);
        favActionMap.put("FAV_3", CommissionStatusActivity.class);

要持久存储数据,请将其保存在数据库或共享首选项中

【讨论】:

  • 当您关闭应用程序时,此数据将丢失
  • 不确定是什么意思:favActionMap.put("FAV_1", AddFixtureActivity.class); favActionMap.put("FAV_2", AddSwitchActivity.class); favActionMap.put("FAV_3", CommissionStatusActivity.class);并且不确定如何实现此功能,即我是否只是将此代码放在主要活动中,然后有一个收藏夹,但在与此哈希图相关的每个活动中?
  • 我刚刚给你举了一个例子,你可以把任何像“FAV_1”这样的字符串和一个喜欢的活动相匹配。当用户将其中一项活动标记为最喜欢的活动时,您会将这些数据放入 HashMap 中
最近更新 更多