私は EditTextPreference を持っていますが、その文字列がいつ共有設定ファイルに保存されるかわかりません。
null 文字列から始めて "Hello" に変更した場合、この更新はいつ保存されますか? 手動で保存する必要がありますか?
私は EditTextPreference を持っていますが、その文字列がいつ共有設定ファイルに保存されるかわかりません。
null 文字列から始めて "Hello" に変更した場合、この更新はいつ保存されますか? 手動で保存する必要がありますか?
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);
EditTextPreference.javaのソースを見ると、 String は setText() メソッドで永続化されています。
そのため、テキストが変更された後、SharedPreferences ファイルにコミットされます。
コミットするときは、Editor.commit()
またはを呼び出しますEditor.apply()
。
ドキュメントを見る
好みを編集するときは、次のコードを使用できます。
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
Editor edit = sp.edit();
edit.putString("Preference_Label", variable_name);
edit.commit(); // this commits the edit