-1

我有一个首选项类,允许用户从应用程序的设置中打开“提示”:

public class Prefs extends PreferenceActivity {
//Option names and defualt values
private static final String OPT_HINTS = "hints";
private static final boolean OPT_HINTS_DEF = true;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.settings);
}
/**Get the current value of the hints option */
public static boolean getHints(Context context) {
    return PreferenceManager.getDefaultSharedPreferences(context).getBoolean(OPT_HINTS, OPT_HINTS_DEF);

}
}

xml 文件包含:

<CheckBoxPreference
    android:key="hints"
    android:title="@string/hints_title"
    android:summary="@string/hints_summary"
    android:defaultValue="true" />

如何检查“提示”是否设置为开。然后如果它设置为 On,我想允许应用程序做某件事。

谢谢你的帮助

4

1 回答 1

0

如何检查“提示”是否设置为开。然后如果它设置为 On,我想允许应用程序做某件事。

使用您的代码只需调用:

if(getHints(this)) {
    // The preference is checked, do something
}
else {
    // The preference isn't checked
}

尽管PreferenceManager.getDefaultSharedPreferences(context)随着您添加更多首选项,保存在类变量中可能会更容易。

于 2013-02-27T18:22:26.810 回答