无法从首选项活动获取首选项



主活动

   @Override public void onCreate() {
        super.onCreate();
        SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
         boolean checked = settings.getBoolean("test", false);
    }

preferences.xml

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
        android:title="@string/settings">
    <CheckBoxPreference android:key="test" android:title="test" android:defaultValue="false"/>
</PreferenceScreen>

设置

import android.os.Bundle;
import android.preference.PreferenceActivity;
public class Setting extends PreferenceActivity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.preferences);
    }
}

checked的结果总是false,尽管我勾选了复选框

如果我们为"CheckBoxPreference"设置"android:spersistent="true",那么下次调用"onCreate"时,我们可以看到值发生了更改。

最新更新