2012-04-12 113 views
1

我想在關閉應用程序之前保存一些值。但我不知道我是否必須創建一個新文件(.txt)並將其保存;或者我只是可以更改strings.xml文件,並且當我下次打開應用程序時,保存的值將是正確的保存值或將在首次使用之前定義它們的值。我知道存在從strings.xml文件中讀取真正簡單的方法,所以我認爲在關閉之前必須有一種方法在這個文件中設置值(但我無法在網上找到)。感謝您的任何示例或您的建議和解釋。在關閉應用程序之前保存值?

回答

3

Android提供的SharedPreferences類來幫助您保存簡單的應用程序數據。 您可以使用SharedPreferences類來保存配置信息或任何你想要的。 當你關閉應用程序時,onStop(),onDestroy()將被調用。你可以重寫它們來實現你想要的。

SharedPreferences類的使用是非常簡單的:

步驟1:用SharedPreferences寫入對象

//Create a object SharedPreferences from getSharedPreferences("name_file",MODE_PRIVATE) of Context 
private SharedPreferences pref; 
pref = getSharedPreferences("info", MODE_PRIVATE); 
//Using putXXX - with XXX is type data you want to write like: putString, putInt... from  Editor object 
Editor editor = pref.edit(); 
editor.putString("key5","value5"); 
//finally, when you are done saving the values, call the commit() method. 
editor.commit() 

步驟2:讀取與SharedPreferences對象

//get SharedPreferences from getSharedPreferences("name_file", MODE_PRIVATE) 
SharedPreferences shared = getSharedPreferences("info",MODE_PRIVATE) 
//Using getXXX- with XX is type date you wrote to file "name_file" 
String string_temp = shared.getString("key5"); 

的MODE_PRIVATE常數指示共享首選項只能由創建它的應用程序打開。

的共享偏好文件是保存在一個XML文件/數據/數據// shared_prefs文件夾

+0

文件說,不要依靠'的onStop()'和'的onDestroy()'用於保存數據的那些方法可能永遠不會被調用。 – TheRealChx101 2015-09-27 02:58:15

0

更好地共享偏好去保存數據,但如果你認爲你有保存更多的數據量,然後更好地去與數據庫或將其保存作爲文件。

請參閱本LINK

相關問題