2013-03-26 70 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"); 
}