我现在正在上安卓课,所以我对安卓应用程序开发有点陌生。
我对基本活动的第一个假设是它是全局变量,并且它的值可用于所有活动。我发现它可用于我的主要活动,但之后的任何活动都不可用。
在基本活动中,我存储了一个对象数组列表。我还从那里的 xml 加载数据,将对象添加到 arrayList。进入主活动后,我仍然可以访问该 arrayList 及其值。我用它来填写列表。但是当我转到下一个活动时,它知道 arrayList,但认为它是空的。
是否需要在基活动中创建方法来检索 arrayList 并将对象添加到数组列表?
任何帮助将不胜感激。
谢谢
米歇尔
全局变量需要声明static
。然后,可以从任何类访问它们。例:
public class Globals {
public static String myString;
}
任何类都可以像这样读/写 myString:
Globals.myString = "foo";
或
String bar = Globals.myString;
根据经验,我相信一个活动的变量仅在活动处于活动状态时对另一个活动可用,这意味着在onCreate和onDestroy之间,否则您可能会得到一个空指针异常,您真正应该做的是将数据或数组以及意图发送到另一个活动。
我认为您不应该调用其他活动变量,尽管如上所述这是可能的。我相信当活动具有称为onDestroy方法时,活动中的对象将被销毁并从内存中删除。摧毁他们持有的任何东西。
这是什么基本活动?它只是延长活动吗?然后主活动也在扩展活动?任何时候只有一个活动可用,如果你做我认为你做的事情,你应该有一个服务,可以为你提供整个应用程序周期的一切,只要记住在你完成它时停止它。