如何在PreferenceActivity中将SharedPreferences设置为默认值?

我已经为PreferenceScreen创建了一个基于xml的PreferenceActivity.在xml中,您可以为不同的首选项指定认值.但是在打开和关闭屏幕之前,这些不存储在我的SharedPreferences中.

问题是我想立即使用存储在此屏幕中的首选项(如服务器地址),如果用户想要更改认值,则只需要打开它.

有没有办法存储偏好屏幕xml中的所有首选项,而不强制用户打开和关闭首选项活动?

我知道你可以在从SharedPreferences中检索Preference时提供认值,但是在xml和code中都必须保持认值是愚蠢的.

解决方法

只需在Application类中使用此代码即可.
PreferenceManager.setDefaultValues(this,R.xml.preference,false);

它将从XML加载您的首选项,最后一个参数(readAgain)将保证不会覆盖用户首选项.您需要在R.xml.preference文件中维护认参数.

请查看Android API中的PreferenceManager.setDefaultValues以进行进一步调查.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...