Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何访问SharedReferences字段?_Java_Android_Sharedpreferences_Android Context_Listpreference - Fatal编程技术网

Java 如何访问SharedReferences字段?

Java 如何访问SharedReferences字段?,java,android,sharedpreferences,android-context,listpreference,Java,Android,Sharedpreferences,Android Context,Listpreference,我试图从SAX解析器类访问活动中声明的SharedReferences字段 我尝试使用GetDefaultSharedReferences(context),但由于SAX解析器不扩展活动,因此找不到要作为此方法参数传递的上下文 如何访问此字段 现在,让我们假设我成功地做到了这一点。这里还有第二个问题:我的SharedReferences字段在活动中声明(实际上是扩展PreferenceActivity的类)。在这个SharedReferences字段中,我可以存储两个复选框列表中的布尔值,代表两

我试图从SAX解析器类访问活动中声明的SharedReferences字段

我尝试使用GetDefaultSharedReferences(context),但由于SAX解析器不扩展活动,因此找不到要作为此方法参数传递的上下文

如何访问此字段

现在,让我们假设我成功地做到了这一点。这里还有第二个问题:我的SharedReferences字段在活动中声明(实际上是扩展PreferenceActivity的类)。在这个SharedReferences字段中,我可以存储两个复选框列表中的布尔值,代表两个多选首选项列表

我需要知道这些偏好列表的哪个值是“真的”。我该怎么做

这是我的代码:-Pref.java

public class Pref extends PreferenceActivity implements OnSharedPreferenceChangeListener {
static SharedPreferences pref;

public void onCreate(Bundle saveInstanceState) {
    super.onCreate(saveInstanceState);

    pref = getPreferenceManager().getSharedPreferences();
    pref.registerOnSharedPreferenceChangeListener(this);

    int c = pref.getInt("numRun",0);
    c++;
    pref.edit().putInt("numRun",c).commit();
    addPreferencesFromResource(R.xml.prefs);
}
我想我需要先访问pref,然后我有两个多选首选项列表。如何从这些列表中获取值?

像这样尝试

SharedPreferences prefs;

prefs = PreferenceManager.getDefaultSharedPreferences(this);

username = prefs.getString("username","");

password = prefs.getString("password","");