2013-03-26 69 views
1

当按下主页按钮时,应用程序被最小化并等待一个小时,然后重新打开应用程序静态变量在赋值之前为空为什么有人给我答案在此先感谢。android:使用静态变量

+0

操作系统可以杀死你的应用程序(需要内存),因此你的变量可以为空。 – 2013-03-26 09:01:34

+0

使用共享偏好。 – 2013-03-26 09:01:59

+0

如何在sharedPreferences中保存对象的数组列表? – user1328435 2013-03-26 09:20:20

回答

1

一旦没有类的实例在类加载器子系统中,静态变量也会被垃圾收集所以你不能在静态变量中保存数据。如果你想持久化数据,那么你可以使用共享首选项。

0

尝试通过onSaveInstanceState()函数或使用SharedPreference来代替您的变量状态。

@Override 
public void onSaveInstanceState(Bundle savedInstanceState) 
{ 
    super.onSaveInstanceState(savedInstanceState); 
    savedInstanceState.putInt("MyInt", 1); 
} 

@Override 
public void onRestoreInstanceState(Bundle savedInstanceState) 
{ 
    super.onRestoreInstanceState(savedInstanceState); 
    int myInt = savedInstanceState.getInt("MyInt"); 
}