gpt4 book ai didi

java - finish() 正在销毁我的对象

转载 作者:太空宇宙 更新时间:2023-11-04 13:53:44 27 4
gpt4 key购买 nike

我有一个 Activity ,它创建了我创建的名为classA的类的新实例。在classA中,我有一个方法将对象添加到位于classA中的STATICarrayList

所以我的 Activity 看起来像这样:

SecondaryActivity extends Activity {

// creating instance of classA:
classA ca = new classA();

// method that adds object to arrayList:
ca.addObject(Object);

添加对象后,我想返回到我的主要 Activity ,因此我调用 SecondaryActivity.this.finish()

...工作正常,但唯一的问题是在我的主要 Activity 中,arrayList 不保存我添加的对象。

我在 secondaryActivity 中放置了一些 Log 方法,我发现我成功地将一个对象添加到 arrayList 中,但在我调用 finish() 后,它不在那里。我假设正在发生的事情是 finish() 破坏了我对 classA 的引用,然后破坏了我添加的对象。

我不确定这是否正在发生。有人可以向我解释一种有效的方法来做我想做的事情吗?提前致谢。

最佳答案

我所做的是,我正在 mainActivity 的 onCreate 方法中检查 ArrayList,因此,当我在其子 Activity 上调用 finish() 时,它不会在我的 mainActivity 上调用 onCreate()

因此,我在 onStart() 方法中重置了 mainActivity 中的 classA,效果很好。

关于java - finish() 正在销毁我的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30041280/

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