如何获得 PreferenceFragment 的价值

use*_*228 5 java android sharedpreferences android-studio

我有这个代码:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    <CheckBoxPreference android:key="notification_settings"
        android:text="@string/impostazione"
        android:id="@+id/save_check"
        android:summary="@string/notification_title"
        android:defaultValue="false"

        ></CheckBoxPreference>

</PreferenceScreen>
Run Code Online (Sandbox Code Playgroud)

现在我需要在 FragmentA 中获取复选框值:

sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
Run Code Online (Sandbox Code Playgroud)

现在?

Hoa*_*yen 5

sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
boolean isChecked = sharedPreferences.getBoolean(getString(R.string.notification_settings), false);
Run Code Online (Sandbox Code Playgroud)


Har*_*ana 3

试试这个方法,希望这能帮助你解决你的问题。

sharedPreferences.getBoolean("notification_settings",false)
Run Code Online (Sandbox Code Playgroud)

getBoolean():需要两个参数,一个是键,另一个是默认值