我有一个应用程序,其中我使用了一些变量,我想在使用它们或关闭应用程序后释放或释放它们使用的内存空间。有没有这样做的过程?
我用过:
int x = Integer.parseInt(edt.getText().toString()) * Integer.parseInt(edt1.getText().toString());
String z = String.valueOf(x);
edt - 代表我用于输入值的EditText。
将值输入EditText后,每当我切换到下一个活动页面然后返回上一页时,EditText的值仍然可用。但我想清除变量的值。
我怎样才能做到这一点?
答案 0 :(得分:0)
我在这里回答了一个几乎相似的问题:Android proper clean up/disposing
基本上你需要做的是将对象设置为null,以便垃圾收集器在运行时可以清除它。
答案 1 :(得分:0)
正如您在新活动开始时Activity lifecycle graph上看到的那样,旧活动仅暂停,所有值都会保留。
如果系统其余部分没有立即需要内存,则不会被破坏。
我假设edt
位于通过findViewById
进行的布局中,而不是手工创建(代码中不明显)。因此,如果您想在切换回旧活动时清除 EditText 的值,则需要在onPause
或onResume
中手动执行此操作。
在应用程序关闭时,这些将由Java VM发布。请注意,离开上一个活动后,您的应用可能不会立即被杀死。