Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Base活动:Base';s全局变量,Can';我不能从一些活动中得到什么_Android_Global Variables - Fatal编程技术网

Android Base活动:Base';s全局变量,Can';我不能从一些活动中得到什么

Android Base活动:Base';s全局变量,Can';我不能从一些活动中得到什么,android,global-variables,Android,Global Variables,我现在正在上安卓课程,所以我对安卓应用开发有些陌生 我对基本活动的第一个假设是,它的全局变量及其值将可用于所有活动。我发现它可以用于我的主要活动,但之后的任何活动都不能使用 在基本活动中,我存储对象的ArrayList。我还从其中的xml加载数据,该xml将对象添加到arrayList。一旦进入主活动,我仍然可以访问该arrayList及其值。我用它来填一张表。但当我转到下一个活动时,它知道arrayList,但认为它是空的 我是否需要在基本活动中创建方法来检索arrayList并将对象添加到数

我现在正在上安卓课程,所以我对安卓应用开发有些陌生

我对基本活动的第一个假设是,它的全局变量及其值将可用于所有活动。我发现它可以用于我的主要活动,但之后的任何活动都不能使用

在基本活动中,我存储对象的ArrayList。我还从其中的xml加载数据,该xml将对象添加到arrayList。一旦进入主活动,我仍然可以访问该arrayList及其值。我用它来填一张表。但当我转到下一个活动时,它知道arrayList,但认为它是空的

我是否需要在基本活动中创建方法来检索arrayList并将对象添加到数组列表中

任何帮助都将不胜感激

谢谢,


Michelle

根据经验,我相信一个活动的变量只有在该活动处于活动状态时才对另一个可用,这意味着在onCreate和onDestroy之间,否则可能会出现空指针异常,您真正应该做的是发送数据或数组,以及其他活动的意图

我认为你不应该调用其他活动变量,尽管如上所述是可能的。我相信当活动有了名为onDestroy的方法后,活动中的对象将被销毁并从内存中删除。摧毁他们持有的任何东西


这项基本活动是什么?它只是扩展活动吗?那么MainActivity也在扩展活动吗?在任何时候,只有一个活动是可用的,如果你在做我认为你应该做的事情,你应该有一个服务,可以在应用程序的整个周期内为你提供一切,记住在你完成它时停止它

需要声明全局变量
static
。然后,可以从任何类访问它们。例如:

public class Globals {
    public static String myString;
}
任何类都可以像这样读/写myString:

Globals.myString = "foo";

String bar = Globals.myString;