Android Получить ключи из файла preferences.xml

У меня есть 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 .

Есть ли у кого-нибудь решение, как выполнить эту работу?

6
задан Joachim Sauer 9 March 2011 в 13:59
поделиться