何时将首选项保存到文件?

时间:2013-07-24 18:00:52

标签: android preference edittextpreference

我有一个EditTextPreference,我不知道该字符串何时保存到共享首选项文件。

如果我以空字符串开头,并将其更改为“Hello”,此更新何时保存?我必须手动保存吗?

4 个答案:

答案 0 :(得分:2)

  

我有一个EditTextPreference,不知道它何时提交该字符串   到共享首选项文件

如果您查看EditTextPreference文档,则会在调用setText(String)方法时保存文本。此方法提交将文本保存到SharedPreferences。在调用该方法之前,首选项永远不会更新。例如......

EditTextPreference mPrefs = ...

//perform any manipulations on the string, not saved until you call setText()
String mText = "2";
mText += " + 2";
mText += " = 4";

// saves "2 + 2 = 4" to SharedPreferences
mPrefs.setText(mText);

答案 1 :(得分:1)

提交时,请致电Editor.commit()Editor.apply()

请参阅documentation

答案 2 :(得分:1)

查看EditTextPreference.java的源代码,String保存在setText()方法中。

因此,在文本更改后,它将被提交到SharedPreferences文件。

答案 3 :(得分:0)

编辑您的偏好时,您可以使用以下代码:

SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);


Editor edit = sp.edit();
edit.putString("Preference_Label", variable_name);
edit.commit(); // this commits the edit