我的主要活动中有一些主要变量,一旦用户登录,我就会从互联网上检索它们的值。之后,有多个活动可以改变数据库中的这些值,但这并不反映在当前加载的值直到用户注销/进入。 (我从互联网上检索数据的过程)
直接从活动2更新主要活动中的这些值的最佳方法是什么,而无需注销/进入?
有没有办法设置这些变量而不会产生意图并将新值放在额外的包中? (我需要更改值而不返回活动)
答案 0 :(得分:1)
您可以尝试将变量作为静态成员放入自定义Application
类中,然后通过Application.xyzStaticMember()
从任何位置访问它们。这是一个例子:
public class MyTestApp extends Application {
private static List<Int> testList;
public static void setList(List<Int> l) {
testList = l;
}
public static List<Int> getList() {
return testList;
}
}
然后访问成员:MyTestApp.setList(null);
或MyTestApp.getList();
。哦,不要忘记在AndroidManifest.xml
文件中使用该类!
<application android:name="com.example.MyTestApp"
/* ...more stuffs */ />