请帮助我理解阅读偏好的一部分

Rob*_*Rob -1 java android boolean preferences

所以我对java/android仍然有点新,我试图读取一个偏好值,但我试图理解它的每个部分,所以它对我来说更有意义......

SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this);
boolean soundEnabledPref = sharedPref.getBoolean("sound", soundEnabled);
Run Code Online (Sandbox Code Playgroud)

在getBoolean中,我试图理解第一个字符串是什么"声音",以及soundEnabled boolean的用途.

所以我已经声明soundEnabled作为布尔值顶部,我猜这是存储我正在检索的值的东西?

虽然"声音",第一个字符串的目的是什么?我想确保我正确地命名它,如果它用于存储某些东西,或者如果我用它引用某些东西,那么我可能需要将它命名为不同的东西.

我已经阅读了开发人员的文档,但仍然有点困惑,所以如果有人能给我一个快速的解释,我会非常感激!

Mel*_*des 6

  • "声音"是你寻找价值的关键
  • soundEnabled是一个布尔变量,它有一些值 - true或false; 如果没有"声音"键,此值将用作soundEnabledPref的默认值; 它也可以这样写:

    boolean soundEnabledPref = sharedPref.getBoolean("sound", true);
    
    Run Code Online (Sandbox Code Playgroud)

    如果没有"声音"键,soundEnabledPref将采用默认值true

键的一个好习惯是使用常量 - 你将避免以后的简单拼写错误,例如:

public static final String KEY_SOUND = "sound";
Run Code Online (Sandbox Code Playgroud)

然后

boolean soundEnabledPref = sharedPref.getBoolean(ClassNameWhereItsDefined.KEY_SOUND, true);
Run Code Online (Sandbox Code Playgroud)