偏好不起作用

时间:2013-03-05 18:49:09

标签: java android

我有这个小代码片段可以访问我的偏好设置,这样当我的复选框为“真实”时然后飞溅音乐播放。否则它没有。我正在关注的教程使用此代码,但我的不是。任何人都可以看到我的代码有问题吗?

当我运行该应用时,音乐会播放,但我不会收到任何错误。

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);

    setContentView(R.layout.splash);

    ourSong = MediaPlayer.create(Splash.this, R.raw.clip1);

    SharedPreferences getPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    boolean musicCheck = getPrefs.getBoolean("checkbox",true);
    if (musicCheck == true){
        ourSong.start();
    }

偏好设置XML:

<EditTextPreference
    android:title="EditText"
    android:key="name"
    android:summary="Enter your name"/>

<CheckBoxPreference
    android:title="Music"
    android:defaultValue="True"
    android:key="Checkbox"
    android:summary="For the Splash Screen"/>

<ListPreference
    android:title="List"
    android:key="list"
    android:summary="This is a list"
    android:entries="@array/list"
    android:entryValues="@array/lvalues"
    ></ListPreference>

1 个答案:

答案 0 :(得分:1)

boolean musicCheck = getPrefs.getBoolean("checkbox",true);更改为

boolean musicCheck = getPrefs.getBoolean("Checkbox",true);

我相信您获得的偏好名称需要与偏好键相匹配。