У меня есть PreferencesActivity
, который показывает preferences.xml
с флажками.
предпочтения .xml
:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="Keywords">
<CheckBoxPreference android:key="Essen"
android:title="Essen"
android:selectable="true"
android:enabled="true"
android:persistent="false">
</CheckBoxPreference>
<CheckBoxPreference android:key="Kleidung"
android:title="Kleidung"
android:selectable="true"
android:enabled="true"
android:persistent="false">
</CheckBoxPreference>
</PreferenceCategory>
</PreferenceScreen>
PreferencesActivity:
public class PreferencesViewController extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
Теперь в другом ListActivity
Я хочу показать все ключи / заголовки из отмеченных флажков.
Я пытаюсь получить доступ к настройкам с помощью
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
] или
SharedPreferences prefs = getSharedPreferences("mypackage_preferences", 0);
Но оба на самом деле не работают.
Когда я вызываю prefs.getAll (). size ()
, результат равен 0.
Я могу получить доступ к ключам / заголовку с помощью ] getPreferenceScreen (). getPreference (i).…
, но он не работает из другого Activity
, только из PreferenceActivity
.
Есть ли у кого-нибудь решение, как выполнить эту работу?