2010-12-23 123 views
0

是否有任何好方法可以保存並恢復Android中一組首選項(即使用SharedPreferences存儲)的值?保存和恢復一組首選項

對於我的遊戲應用程序,我有大約10個關於如何呈現遊戲的偏好。我想要做的是添加可以選擇的各種配置文件,其中每個配置文件將設置10個首選項的值。例如,我可能會有一個「電池電量不足」配置文件,它會將所有渲染首選項設置爲使用最少電量或「高度詳細」配置文件的值,以將所有渲染首選項設置爲其最高設置。

我也會有幾個偏好不是由這些配置文件設置的。例如,我將有一個首選項來存儲當前活動配置文件的名稱。

我有關於如何保存/恢復配置文件的選項?如何更改配置文件?

+0

我不是超級熟悉Android開發的解析。你不能使用java util Preferences http://download.oracle.com/javase/1.4.2/docs/api/java/util/prefs/Preferences.html? – CoolBeans 2010-12-23 05:15:54

回答

1

恕我直言,基本上有三種方式,如何實現自己的目標:

  • 創建一套SharedPreferences - 分隔每個配置文件,如:
 
    settingsCommon=context.getSharedPreferences("MyCommon", MODE_PRIVATE); 
    settingsLowBattery=context.getSharedPreferences("MyLowBattery", MODE_PRIVATE); 
  • 添加到每個偏好關鍵不適用,如 後綴將指向配置文件:
 
int getIntPreference(SharedPreferences settings, String profile, String key, int defValue) 
{ 
    String fullKey=key+"."+profile; 
    return settings.getInt(fullkey, defValue); 
} 
  • 擴展SharedPreferences類和 實現你自己的,包括 創建/任意的XML
+0

謝謝。我喜歡第一個選項,因爲這意味着Android爲我做了很大的努力。但是,我將如何去顯示設置屏幕,例如,一些偏好與個人資料相關,一些偏好與不屬於個人資料的更一般設置有關?如果可能的話,我想在同一個屏幕上顯示所有內容。 – RichardNewton 2010-12-23 14:16:27