2010-07-19 49 views
0

我喜歡SharedPreferences如何在android中工作,我想知道是否有簡單的方法將它們保存到另一個文件中,以便加載前一個prefs實例,反之亦然。基本上當你加載這個文件時,所有的首選項會改變爲你以前的樣子。我希望能夠以這種方式交換3個或4個不同版本的相同的pref鍵。是否有捷徑可尋?我是否可以將SharedPreferences保存到文件中,以便可以擁有多個前綴的實例?

回答

2

是的,這是可能的。上下文有一種方法,稱爲getSharedPreferences (String name, int mode)

檢索並保留首選項文件'name'的內容,返回一個SharedPreferences,通過它可以檢索和修改其值。只有一個SharedPreferences對象的實例返回給同一名稱的任何調用者,這意味着他們一旦創建就會看到對方的編輯。

Parameters 
name Desired preferences file. If a preferences file by this name does not exist, it will be created when you retrieve an editor (SharedPreferences.edit()) and then commit changes (Editor.commit()). 
mode Operating mode. Use 0 or MODE_PRIVATE for the default operation, MODE_WORLD_READABLE and MODE_WORLD_WRITEABLE to control permissions. 

Returns 
Returns the single SharedPreferences instance that can be used to retrieve and modify the preference values. 
+0

這看起來正確的,但它讀起來就像它會創建一個文件編輯和提交修改後,可能保持爲您做出更多的變化而改變這個文件。我想要的是用於保存首選項的即時快照的文件,因此當我更改首選項時,它將單獨保留該文件,然後我可以將其讀回,並且在進行初始呼叫時所有首選項都會立即返回。我可以調用getSharedPreferences('pref1',0),然後提交1個pref,然後取消關聯文件與更改,直到我需要稍後調用它爲止? – 2010-07-19 16:32:13

相關問題