2
我有以下PreferenceActivity定义:获取默认共享偏好,而不调用PreferenceActivity
public class HiddenPreferences extends PreferenceActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.hidden_prefs);
}
}
其中hidden_prefs.xml看起来是这样的:
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<EditTextPreference android:key="testRestUrl"
android:title="REST service URI"
android:defaultValue="http://service/url">
</EditTextPreference>
</PreferenceScreen>
现在我设定的值设置为默认和想要在其他一些活动中阅读此首选项,例如:
PreferenceManager.setDefaultValues(this, R.xml.hidden_prefs, false);
prefs = PreferenceManager.getDefaultSharedPreferences(this);
但打电话时:默认值属性:
prefs.getString("testRestUrl", "");
我需要给默认值作为第二个参数,并调用总是返回“”(如在调用中给出),但不作为XML的Android给出的默认值。
首选项应该如何访问以获取默认值?
你是正确的,PreferenceManager在这种情况下是无用的。我改用了旧的R.values.my_settings.xml文件。 – Drejc