gpt4 book ai didi

android - 从一个 Activity 更新存储在另一个 Activity 中的对象

转载 作者:行者123 更新时间:2023-12-02 16:06:32 25 4
gpt4 key购买 nike

我正在我的第一个 Activity 中创建一个名为“AppEngine”的对象。此 AppEngine 对象存储事件的数组列表,并以其中的 2 个事件开始。

从第一个 Activity 中,我单击一个按钮,该按钮会将我带到第二个 Activity,在其中我使用以下方法将事件对象添加到 arrayList。

appEngine.getList.add(new Event)

在 Activity 2 中,如果我要调用 appEngine.getList.size(),大小将正确返回为 3,并且我可以看到额外的事件。

当我切换回 Activity 2 时,我正在调用 appEngine.getList.size(),但它只返回 2,并且额外的事件不在那里。我怎样才能更新appEngine对象?

最佳答案

将数组列表保存在共享首选项中,如下创建 AppPreference 类:-

public class AppPreference {

private static SharedPreferences mPrefs;
private static SharedPreferences.Editor mPrefsEditor;

public static Set<AppEngine> getList(Context ctx) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
return mPrefs.getStringSet("AppEngineList", null);
}

public static void setList(Context ctx, ArrayList<AppEngine> value) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
mPrefsEditor = mPrefs.edit();
Set<String> set = new HashSet<>();
set.addAll(value);
mPrefsEditor.putStringSet("AppEngineList", set);
mPrefsEditor.commit();
}
}

从第一个 Activity 中设置您的值,如下所示:-

setList(YourActivity.class, list);

并从应用程序中的任何位置获取您的列表:-

ArrayLis<AppEngine> list = AppPreference.getList(yourActivity.class);

关于android - 从一个 Activity 更新存储在另一个 Activity 中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55652957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com