gpt4 book ai didi

java - 静态变量因未知原因而被重置

转载 作者:行者123 更新时间:2023-12-01 17:35:41 25 4
gpt4 key购买 nike

我有一个名为“DataReference”的类,它有许多静态变量,在整个程序执行过程中各种类可以访问这些变量。

我有一个变量“public static int molecularPercent = 100;”只能通过主菜单 Activity 的“SettingView” Activity 进行更改。

但是,当退出主菜单 Activity 的“GameView” Activity 时,“articlePercent”变量始终重置为 100,即使该值可能已从“SettingView”中编辑过。

我希望该变量保持不变,因为它是静态的,除了“SettingView” Activity 之外,不会在任何地方进行编辑。

如果您知道可能发生什么情况,或者我是否需要进一步澄清情况,请告诉我。

谢谢。

最佳答案

正如您在Android documentation中的图表中看到的那样,任何应用程序被暂停、停止或销毁的进程都可能被杀死: diagram

当它被杀死时,所有类都会从内存中删除,因此所有静态变量都会丢失,一旦您更改当前 Activity ,就会发生这种情况。

要解决此问题,必须以某种方式保存此类变量,例如在 onSaveInstanceState 中Activity 的方法。

关于java - 静态变量因未知原因而被重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6629049/

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