Android应用中可变数量的配置文件的动态首选项

时间:2010-08-22 14:27:31

标签: android android-preferences

我正在寻找一种创建动态首选项的方法,我不需要对首选项键进行硬编码,而我可以拥有可变数量的首选项。 基本上,我的应用程序将允许用户创建多个配置文件,每个配置文件将为固定数量的首选项保存自定义值。
这样,用户每次希望此应用程序以不同方式运行时都不必更改首选项,他只需切换配置文件即可。 我认为可行的一种方法是通过子类化所有标准的Preference类并使用包含配置文件名称的自定义首选项键调用它们的setKey方法,但这很难看。 那么有更清洁,更符合标准的方法吗? 问候, Dhruwat

1 个答案:

答案 0 :(得分:3)

您可以使用getSharedPreferences方法为每个用户在不同的文件中保存不同的偏好设置:

  
    

getSharedPreferences() - 如果您需要使用第一个参数指定的名称标识的多个首选项文件,请使用此选项。

  

这样,你可以这样做:

SharedPreferences settings = getSharedPreferences("prefs_user_"+user_id, 0);
// from now on you can use use the normal way to set or get the preferences

我假设您使用id来识别用户。