我找到的大部分示例都展示了在xml中设置默认值的方法。 我需要在代码后端设置默认值。
- 像下面代码中调用setDefaultValue(..)这样做是正确的吗?
- 如何使此值在用户尝试更改此首选项时显示。目前,我看到了空的EditText。
注意:该值为
Environment.getExternalStorageDirectory().getPath() + "/BasicCommunicationWithAndroid.log"
/storage/sdcard0/BasicCommunicationWithAndroid.log不是null也不是空字符串
public class SettingsFragment extends PreferenceFragment
{
private Preference _pref_log_logFilenameOnSDCard;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
loadPreferences();
}
private void loadPreferences()
{
_pref_log_logFilenameOnSDCard = (Preference) findPreference("pref_log_logFilenameOnSDCard");
_pref_log_logFilenameOnSDCard.setDefaultValue(Environment.getExternalStorageDirectory().getPath() + "/BasicCommunicationWithAndroid.log");
}
}
在MainActivity的onCreate(..)中,我有:
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);