background image

12

        SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);   

13

        Editor prefsprefsEditor = prefs.edit();   

14

        prefsEditor.putBoolean(   

15

                context.getString(R.string.pref_key_flag_background_update),   

16

                newValue);   

17

        prefsEditor.commit();   

18

   }  

19

 }  

在 这 个 类 中 , 我 们 定 义 了 一 个 公 共 变 量 来 确 认 设 置 参 数 组 或 集 的 名 称 , 名 为

PREFS_NAME。我们还使用了名为 pref_key_flag_background_update 的资源字符串,指定特
定的设置参数名称定义。你应该为自己的资源添加字符串,那样可以定义该标识符。我们把
其值设为

“background_update_flag”,但重要的是,所用的值在每个地方都是一样的。

虽然我们添加了一个

setBackgroundUpdateFlag()方法,以求全面,但不会使用这个方法。

下文解释了原因。

最后,我们把这个

Java 类添加到了 com.mamlambo.tutorial.tutlist.data 程序包,因为那

个类似乎最有关系。

第二步:添加

UI 设计参数设置屏幕活动

Android 软 件 开 发 工 具 包 (SDK) 包 括 了 一 种 一 致 的 方 法 为 用 户 提 供 设 置 :

PreferenceActivity。这个特殊的 Activity(活动)类与参数设置资源文件一起,共同使得开发人
员很容易一致地配置和显示大多数类型的应用设置。与其他应用程序和系统参数设置屏幕相
一致,也使得这些屏幕对用户来说很熟悉、很容易。

想 为

“ TutList” 应 用 程 序 添 加 PreferenceActivity , 首 先 添 加 一 个 新 的 活 动 调 用

TutListPreferencesActivity,让它扩展 PreferenceActivity(我们把它添加到主程序包)。由于我
们没有使用默认的参数设置名称,就需要设定这个

PreferenceActivity 将使用的参数设置名

称。此外,我们需要告诉它使用哪个参数设置资源文件。这将告诉它如何显示参数设置,并
且告诉它这个屏幕显示和改动哪些参数设置。

在这个活动的

onCreate()方法里面,使用 setSharedPreferencesName()方法,参数设置组

常 量 在 我 们 在 第 一 步 定 义 的 参 数 设 置 辅 助 类 中 有 所 定 义 。 然 后 调 用
addPreferencesFromResource()方法。我们会在下一步定义这个资源。

眼下,这整个类看起来像这样:

20

public class TutListPreferencesActivity extends PreferenceActivity {   

21

    @Override  

22

    protected void onCreate(Bundle savedInstanceState) {   

23

        super.onCreate(savedInstanceState);   

24